diff --git a/A.csv b/A.csv
deleted file mode 100644
index ad83ff0cbe81659d8754e72d6787442f7f010972..0000000000000000000000000000000000000000
--- a/A.csv
+++ /dev/null
@@ -1,3 +0,0 @@
-Steven , Steve , Butcher
-Dudley , Dudley , Timms
-Gillian , Gillian , Carter
\ No newline at end of file
diff --git a/B.csv b/B.csv
deleted file mode 100644
index bf47bb37fc5f31f96d9ef7be71cafe1ea4efb211..0000000000000000000000000000000000000000
--- a/B.csv
+++ /dev/null
@@ -1,3 +0,0 @@
-jian,shi
-andrew,sogokon
-julian,rathke
\ No newline at end of file
diff --git a/CSV.hs b/CSV.hs
index 39d0c4a3773bb5306350dcddce03648ff6ad6d44..6982355bc539da5dfc74bb86be3b609f3d7d3079 100644
--- a/CSV.hs
+++ b/CSV.hs
@@ -2,6 +2,7 @@ module CSV where
 
 import System.IO
 import Data.List
+import Debug.Trace
 
 readCSV :: FilePath -> IO [[String]]
 readCSV fname = do
@@ -9,16 +10,19 @@ readCSV fname = do
     return $ readCSVString str
 
 readCSVString :: String -> [[String]]
-readCSVString whole = [splitElem ',' (line++" " )  | line <- splitElem '\n' whole]
-splitElem :: Eq a => a -> [a] -> [[a]]
-splitElem elem = split (/=elem)
+readCSVString whole = [split ',' (' ':line ++ " ")  | line <- split '\n' whole]
+split :: Eq a => a -> [a] -> [[a]]
 
-split :: (a -> Bool) -> [a] -> [[a]]
-split p l = case span p l of
-        ([], _) -> []
-        (match, []) -> [match]
-        (match, _:rem') -> match:split p rem'
+split c l = (\(l, _,  _) -> reverse $ map reverse l) $ head $ dropWhile notEnd $ iterate split_ ([], [], l)
+    where
+        split_ (la, wa, []) = (wa:la, [], [])
+        split_ (la, wa, c':l_tail) | c == c' = (wa:la, [], l_tail)
+            | otherwise = (la, c':wa, l_tail)
 
+        notEnd (_, [], []) = False
+        notEnd _= True
+
+split1 a = span (==a)
 print2DList :: [[String]] -> IO ()
 print2DList = putStrLn.toCSVString
 
diff --git a/Lexer.hs b/Lexer.hs
deleted file mode 100644
index b82aa948d0bd41cbb67ba81b4da033578c8e18a1..0000000000000000000000000000000000000000
--- a/Lexer.hs
+++ /dev/null
@@ -1,7058 +0,0 @@
-{-# OPTIONS_GHC -fno-warn-unused-binds -fno-warn-missing-signatures #-}
-{-# LANGUAGE CPP #-}
-{-# LINE 1 "Lexer.x" #-}
-
-module Lexer where
-import Data.List
-
-#if __GLASGOW_HASKELL__ >= 603
-#include "ghcconfig.h"
-#elif defined(__GLASGOW_HASKELL__)
-#include "config.h"
-#endif
-#if __GLASGOW_HASKELL__ >= 503
-import Data.Array
-#else
-import Array
-#endif
-{-# LINE 1 "templates/wrappers.hs" #-}
--- -----------------------------------------------------------------------------
--- Alex wrapper code.
---
--- This code is in the PUBLIC DOMAIN; you may copy it freely and use
--- it for any purpose whatsoever.
-
-
-
-
-
-import Data.Word (Word8)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-import Data.Char (ord)
-import qualified Data.Bits
-
--- | Encode a Haskell String to a list of Word8 values, in UTF8 format.
-utf8Encode :: Char -> [Word8]
-utf8Encode = uncurry (:) . utf8Encode'
-
-utf8Encode' :: Char -> (Word8, [Word8])
-utf8Encode' c = case go (ord c) of
-                  (x, xs) -> (fromIntegral x, map fromIntegral xs)
- where
-  go oc
-   | oc <= 0x7f       = ( oc
-                        , [
-                        ])
-
-   | oc <= 0x7ff      = ( 0xc0 + (oc `Data.Bits.shiftR` 6)
-                        , [0x80 + oc Data.Bits..&. 0x3f
-                        ])
-
-   | oc <= 0xffff     = ( 0xe0 + (oc `Data.Bits.shiftR` 12)
-                        , [0x80 + ((oc `Data.Bits.shiftR` 6) Data.Bits..&. 0x3f)
-                        , 0x80 + oc Data.Bits..&. 0x3f
-                        ])
-   | otherwise        = ( 0xf0 + (oc `Data.Bits.shiftR` 18)
-                        , [0x80 + ((oc `Data.Bits.shiftR` 12) Data.Bits..&. 0x3f)
-                        , 0x80 + ((oc `Data.Bits.shiftR` 6) Data.Bits..&. 0x3f)
-                        , 0x80 + oc Data.Bits..&. 0x3f
-                        ])
-
-
-
-type Byte = Word8
-
--- -----------------------------------------------------------------------------
--- The input type
-
-
-type AlexInput = (AlexPosn,     -- current position,
-                  Char,         -- previous char
-                  [Byte],       -- pending bytes on current char
-                  String)       -- current input string
-
-ignorePendingBytes :: AlexInput -> AlexInput
-ignorePendingBytes (p,c,_ps,s) = (p,c,[],s)
-
-alexInputPrevChar :: AlexInput -> Char
-alexInputPrevChar (_p,c,_bs,_s) = c
-
-alexGetByte :: AlexInput -> Maybe (Byte,AlexInput)
-alexGetByte (p,c,(b:bs),s) = Just (b,(p,c,bs,s))
-alexGetByte (_,_,[],[]) = Nothing
-alexGetByte (p,_,[],(c:s))  = let p' = alexMove p c
-                              in case utf8Encode' c of
-                                   (b, bs) -> p' `seq`  Just (b, (p', c, bs, s))
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
--- -----------------------------------------------------------------------------
--- Token positions
-
--- `Posn' records the location of a token in the input text.  It has three
--- fields: the address (number of chacaters preceding the token), line number
--- and column of a token within the file. `start_pos' gives the position of the
--- start of the file and `eof_pos' a standard encoding for the end of file.
--- `move_pos' calculates the new position after traversing a given character,
--- assuming the usual eight character tab stops.
-
-
-data AlexPosn = AlexPn !Int !Int !Int
-        deriving (Eq,Show)
-
-alexStartPos :: AlexPosn
-alexStartPos = AlexPn 0 1 1
-
-alexMove :: AlexPosn -> Char -> AlexPosn
-alexMove (AlexPn a l c) '\t' = AlexPn (a+1)  l     (c+alex_tab_size-((c-1) `mod` alex_tab_size))
-alexMove (AlexPn a l _) '\n' = AlexPn (a+1) (l+1)   1
-alexMove (AlexPn a l c) _    = AlexPn (a+1)  l     (c+1)
-
-
--- -----------------------------------------------------------------------------
--- Monad (default and with ByteString input)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
--- -----------------------------------------------------------------------------
--- Basic wrapper
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
--- -----------------------------------------------------------------------------
--- Basic wrapper, ByteString version
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
--- -----------------------------------------------------------------------------
--- Posn wrapper
-
--- Adds text positions to the basic model.
-
-
---alexScanTokens :: String -> [token]
-alexScanTokens str0 = go (alexStartPos,'\n',[],str0)
-  where go inp__@(pos,_,_,str) =
-          case alexScan inp__ 0 of
-                AlexEOF -> []
-                AlexError ((AlexPn _ line column),_,_,_) -> error $ "lexical error at line " ++ (show line) ++ ", column " ++ (show column)
-                AlexSkip  inp__' _ln     -> go inp__'
-                AlexToken inp__' len act -> act pos (take len str) : go inp__'
-
-
-
--- -----------------------------------------------------------------------------
--- Posn wrapper, ByteString version
-
-
-
-
-
-
-
-
-
-
-
-
-
-
--- -----------------------------------------------------------------------------
--- GScan wrapper
-
--- For compatibility with previous versions of Alex, and because we can.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-alex_tab_size :: Int
-alex_tab_size = 8
-alex_base :: Array Int Int
-alex_base = listArray (0 :: Int, 73)
-  [ -8
-  , -115
-  , -54
-  , -53
-  , -13
-  , -108
-  , 115
-  , -99
-  , -101
-  , 0
-  , 228
-  , 436
-  , -104
-  , 0
-  , 368
-  , 590
-  , -49
-  , -102
-  , -95
-  , 713
-  , 649
-  , 0
-  , 616
-  , 895
-  , 867
-  , 0
-  , 896
-  , 1112
-  , 1140
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , -89
-  , 1224
-  , 1252
-  , 1336
-  , 1364
-  , 1448
-  , 1476
-  , 1560
-  , 1588
-  , 1672
-  , 1700
-  , 1784
-  , 1812
-  , 1896
-  , 1924
-  , 2008
-  , 2036
-  , 2120
-  , 2148
-  , 2232
-  , 2260
-  , 2344
-  , 2372
-  , 2456
-  , 2484
-  , 2568
-  , 2596
-  , 2654
-  , 877
-  , 2729
-  , 0
-  ]
-
-alex_table :: Array Int Int
-alex_table = listArray (0 :: Int, 2984)
-  [ 0
-  , 22
-  , 22
-  , 22
-  , 22
-  , 22
-  , 25
-  , 34
-  , 35
-  , 17
-  , 8
-  , 12
-  , 1
-  , 33
-  , 30
-  , 29
-  , 18
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 5
-  , 0
-  , 22
-  , 0
-  , 11
-  , 23
-  , 0
-  , 0
-  , 0
-  , 0
-  , 37
-  , 38
-  , 0
-  , 36
-  , 42
-  , 16
-  , 43
-  , 3
-  , 72
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 39
-  , 40
-  , 0
-  , 2
-  , 0
-  , 0
-  , 0
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 31
-  , 41
-  , 32
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 57
-  , 60
-  , 60
-  , 56
-  , 60
-  , 60
-  , 59
-  , 60
-  , 60
-  , 60
-  , 53
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 65
-  , 60
-  , 60
-  , 60
-  , 44
-  , 60
-  , 60
-  , 19
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 4
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 14
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 20
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 73
-  , 22
-  , 22
-  , 22
-  , 22
-  , 22
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 22
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , 15
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 71
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 19
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 21
-  , 20
-  , 4
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 13
-  , 14
-  , 6
-  , 9
-  , 9
-  , 9
-  , 10
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 45
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 24
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 27
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 28
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 69
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 48
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 49
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 68
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 67
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 54
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 64
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 63
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 61
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 7
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 58
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 62
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 55
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 66
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 52
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 51
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 50
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 47
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 46
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 0
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 26
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 60
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 70
-  , 72
-  , 72
-  , 72
-  , 72
-  , 72
-  , 72
-  , 72
-  , 72
-  , 72
-  , 72
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  , 0
-  ]
-
-alex_check :: Array Int Int
-alex_check = listArray (0 :: Int, 2984)
-  [ -1
-  , 9
-  , 10
-  , 11
-  , 12
-  , 13
-  , 121
-  , 61
-  , 61
-  , 117
-  , 109
-  , 112
-  , 116
-  , 62
-  , 116
-  , 110
-  , 105
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 111
-  , -1
-  , 32
-  , -1
-  , 34
-  , 35
-  , -1
-  , -1
-  , -1
-  , -1
-  , 40
-  , 41
-  , -1
-  , 43
-  , 44
-  , 45
-  , 46
-  , 47
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , 58
-  , 59
-  , -1
-  , 61
-  , -1
-  , -1
-  , -1
-  , 65
-  , 66
-  , 67
-  , 68
-  , 69
-  , 70
-  , 71
-  , 72
-  , 73
-  , 74
-  , 75
-  , 76
-  , 77
-  , 78
-  , 79
-  , 80
-  , 81
-  , 82
-  , 83
-  , 84
-  , 85
-  , 86
-  , 87
-  , 88
-  , 89
-  , 90
-  , 91
-  , 92
-  , 93
-  , -1
-  , -1
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 128
-  , 129
-  , 130
-  , 131
-  , 132
-  , 133
-  , 134
-  , 135
-  , 136
-  , 137
-  , 138
-  , 139
-  , 140
-  , 141
-  , 142
-  , 143
-  , 144
-  , 145
-  , 146
-  , 147
-  , 148
-  , 149
-  , 150
-  , 151
-  , 152
-  , 153
-  , 154
-  , 155
-  , 156
-  , 157
-  , 158
-  , 159
-  , 160
-  , 161
-  , 162
-  , 163
-  , 164
-  , 165
-  , 166
-  , 167
-  , 168
-  , 169
-  , 170
-  , 171
-  , 172
-  , 173
-  , 174
-  , 175
-  , 176
-  , 177
-  , 178
-  , 179
-  , 180
-  , 181
-  , 182
-  , 183
-  , 184
-  , 185
-  , 186
-  , 187
-  , 188
-  , 189
-  , 190
-  , 191
-  , 192
-  , 193
-  , 194
-  , 195
-  , 196
-  , 197
-  , 198
-  , 199
-  , 200
-  , 201
-  , 202
-  , 203
-  , 204
-  , 205
-  , 206
-  , 207
-  , 208
-  , 209
-  , 210
-  , 211
-  , 212
-  , 213
-  , 214
-  , 215
-  , 216
-  , 217
-  , 218
-  , 219
-  , 220
-  , 221
-  , 222
-  , 223
-  , 224
-  , 225
-  , 226
-  , 227
-  , 228
-  , 229
-  , 230
-  , 231
-  , 232
-  , 233
-  , 234
-  , 235
-  , 236
-  , 237
-  , 238
-  , 239
-  , 240
-  , 241
-  , 242
-  , 243
-  , 244
-  , 245
-  , 246
-  , 247
-  , 248
-  , 249
-  , 250
-  , 251
-  , 252
-  , 253
-  , 254
-  , 255
-  , 128
-  , 129
-  , 130
-  , 131
-  , 132
-  , 133
-  , 134
-  , 135
-  , 136
-  , 137
-  , 138
-  , 139
-  , 140
-  , 141
-  , 142
-  , 143
-  , 144
-  , 145
-  , 146
-  , 147
-  , 148
-  , 149
-  , 150
-  , 151
-  , 152
-  , 153
-  , 154
-  , 155
-  , 156
-  , 157
-  , 158
-  , 159
-  , 160
-  , 161
-  , 162
-  , 163
-  , 164
-  , 165
-  , 166
-  , 167
-  , 168
-  , 169
-  , 170
-  , 171
-  , 172
-  , 173
-  , 174
-  , 175
-  , 176
-  , 177
-  , 178
-  , 179
-  , 180
-  , 181
-  , 182
-  , 183
-  , 184
-  , 185
-  , 186
-  , 187
-  , 188
-  , 189
-  , 190
-  , 191
-  , 192
-  , 193
-  , 194
-  , 195
-  , 196
-  , 197
-  , 198
-  , 199
-  , 200
-  , 201
-  , 202
-  , 203
-  , 204
-  , 205
-  , 206
-  , 207
-  , 208
-  , 209
-  , 210
-  , 211
-  , 212
-  , 213
-  , 214
-  , 215
-  , 216
-  , 217
-  , 218
-  , 219
-  , 220
-  , 221
-  , 222
-  , 223
-  , 224
-  , 225
-  , 226
-  , 227
-  , 228
-  , 229
-  , 230
-  , 231
-  , 232
-  , 233
-  , 234
-  , 235
-  , 236
-  , 237
-  , 238
-  , 239
-  , 240
-  , 241
-  , 242
-  , 243
-  , 244
-  , 245
-  , 246
-  , 247
-  , 248
-  , 249
-  , 250
-  , 251
-  , 252
-  , 253
-  , 254
-  , 255
-  , 143
-  , 144
-  , 145
-  , 146
-  , 147
-  , 148
-  , 149
-  , 150
-  , 151
-  , 152
-  , 153
-  , 154
-  , 155
-  , 156
-  , 157
-  , 158
-  , 159
-  , 160
-  , 161
-  , 162
-  , 163
-  , 164
-  , 165
-  , 166
-  , 167
-  , 168
-  , 169
-  , 170
-  , 171
-  , 172
-  , 173
-  , 174
-  , 175
-  , 176
-  , 177
-  , 178
-  , 179
-  , 180
-  , 181
-  , 182
-  , 183
-  , 184
-  , 185
-  , 186
-  , 187
-  , 188
-  , 189
-  , 190
-  , 191
-  , 192
-  , 193
-  , 194
-  , 195
-  , 196
-  , 197
-  , 198
-  , 199
-  , 200
-  , 201
-  , 202
-  , 203
-  , 204
-  , 205
-  , 206
-  , 207
-  , 208
-  , 209
-  , 210
-  , 211
-  , 212
-  , 213
-  , 214
-  , 215
-  , 216
-  , 217
-  , 218
-  , 219
-  , 220
-  , 221
-  , 222
-  , 223
-  , 224
-  , 225
-  , 226
-  , 227
-  , 228
-  , 229
-  , 230
-  , 231
-  , 232
-  , 233
-  , 234
-  , 235
-  , 236
-  , 237
-  , 238
-  , 239
-  , 240
-  , 241
-  , 242
-  , 243
-  , 244
-  , 245
-  , 246
-  , 247
-  , 248
-  , 249
-  , 250
-  , 251
-  , 252
-  , 253
-  , 254
-  , 255
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 65
-  , 66
-  , 67
-  , 68
-  , 69
-  , 70
-  , 71
-  , 72
-  , 73
-  , 74
-  , 75
-  , 76
-  , 77
-  , 78
-  , 79
-  , 80
-  , 81
-  , 82
-  , 83
-  , 84
-  , 85
-  , 86
-  , 87
-  , 88
-  , 89
-  , 90
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 191
-  , 192
-  , 193
-  , 194
-  , 195
-  , 196
-  , 197
-  , 198
-  , 199
-  , 200
-  , 201
-  , 202
-  , 203
-  , 204
-  , 205
-  , 206
-  , 207
-  , 208
-  , 209
-  , 210
-  , 211
-  , 212
-  , 213
-  , 214
-  , 215
-  , 216
-  , 217
-  , 218
-  , 219
-  , 220
-  , 221
-  , 222
-  , 223
-  , 224
-  , 225
-  , 226
-  , 227
-  , 228
-  , 229
-  , 230
-  , 231
-  , 232
-  , 233
-  , 234
-  , 235
-  , 236
-  , 237
-  , 238
-  , 239
-  , 240
-  , 241
-  , 242
-  , 243
-  , 244
-  , 245
-  , 246
-  , 247
-  , 248
-  , 249
-  , 250
-  , 251
-  , 252
-  , 253
-  , 254
-  , 255
-  , 34
-  , 9
-  , 10
-  , 11
-  , 12
-  , 13
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , 32
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 65
-  , 66
-  , 67
-  , 68
-  , 69
-  , 70
-  , 71
-  , 72
-  , 73
-  , 74
-  , 75
-  , 76
-  , 77
-  , 78
-  , 79
-  , 80
-  , 81
-  , 82
-  , 83
-  , 84
-  , 85
-  , 86
-  , 87
-  , 88
-  , 89
-  , 90
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 0
-  , 1
-  , 2
-  , 3
-  , 4
-  , 5
-  , 6
-  , 7
-  , 8
-  , 9
-  , 10
-  , 11
-  , 12
-  , 13
-  , 14
-  , 15
-  , 16
-  , 17
-  , 18
-  , 19
-  , 20
-  , 21
-  , 22
-  , 23
-  , 24
-  , 25
-  , 26
-  , 27
-  , 28
-  , 29
-  , 30
-  , 31
-  , 32
-  , 33
-  , 34
-  , 35
-  , 36
-  , 37
-  , 38
-  , 39
-  , 40
-  , 41
-  , 42
-  , 43
-  , 44
-  , 45
-  , 46
-  , 47
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , 58
-  , 59
-  , 60
-  , 61
-  , 62
-  , 63
-  , 64
-  , 65
-  , 66
-  , 67
-  , 68
-  , 69
-  , 70
-  , 71
-  , 72
-  , 73
-  , 74
-  , 75
-  , 76
-  , 77
-  , 78
-  , 79
-  , 80
-  , 81
-  , 82
-  , 83
-  , 84
-  , 85
-  , 86
-  , 87
-  , 88
-  , 89
-  , 90
-  , 91
-  , 92
-  , 93
-  , 94
-  , 95
-  , 96
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 123
-  , 124
-  , 125
-  , 126
-  , 127
-  , 192
-  , 193
-  , 194
-  , 195
-  , 196
-  , 197
-  , 198
-  , 199
-  , 200
-  , 201
-  , 202
-  , 203
-  , 204
-  , 205
-  , 206
-  , 207
-  , 208
-  , 209
-  , 210
-  , 211
-  , 212
-  , 213
-  , 214
-  , 215
-  , 216
-  , 217
-  , 218
-  , 219
-  , 220
-  , 221
-  , 222
-  , 223
-  , 224
-  , 225
-  , 226
-  , 227
-  , 228
-  , 229
-  , 230
-  , 231
-  , 232
-  , 233
-  , 234
-  , 235
-  , 236
-  , 237
-  , 238
-  , 239
-  , 240
-  , 241
-  , 242
-  , 243
-  , 244
-  , 245
-  , 246
-  , 247
-  , 248
-  , 249
-  , 250
-  , 251
-  , 252
-  , 253
-  , 254
-  , 255
-  , 10
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , -1
-  , -1
-  , -1
-  , -1
-  , 128
-  , 129
-  , 130
-  , 131
-  , 132
-  , 133
-  , 134
-  , 135
-  , 136
-  , 137
-  , 138
-  , 139
-  , 140
-  , 141
-  , 142
-  , 143
-  , 144
-  , 145
-  , 146
-  , 147
-  , 148
-  , 149
-  , 150
-  , 151
-  , 152
-  , 153
-  , 154
-  , 155
-  , 156
-  , 157
-  , 158
-  , 159
-  , 160
-  , 161
-  , 162
-  , 163
-  , 164
-  , 165
-  , 166
-  , 167
-  , 168
-  , 169
-  , 170
-  , 171
-  , 172
-  , 173
-  , 174
-  , 175
-  , 176
-  , 177
-  , 178
-  , 179
-  , 180
-  , 181
-  , 182
-  , 183
-  , 184
-  , 185
-  , 186
-  , 187
-  , 188
-  , 189
-  , 190
-  , 191
-  , 192
-  , 193
-  , 194
-  , 195
-  , 196
-  , 197
-  , 198
-  , 199
-  , 200
-  , 201
-  , 202
-  , 203
-  , 204
-  , 205
-  , 206
-  , 207
-  , 208
-  , 209
-  , 210
-  , 211
-  , 212
-  , 213
-  , 214
-  , 215
-  , 216
-  , 217
-  , 218
-  , 219
-  , 220
-  , 221
-  , 222
-  , 223
-  , 224
-  , 225
-  , 226
-  , 227
-  , 228
-  , 229
-  , 230
-  , 231
-  , 232
-  , 233
-  , 234
-  , 235
-  , 236
-  , 237
-  , 238
-  , 239
-  , 240
-  , 241
-  , 242
-  , 243
-  , 244
-  , 245
-  , 246
-  , 247
-  , 248
-  , 249
-  , 250
-  , 251
-  , 252
-  , 253
-  , 254
-  , 255
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , 69
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 39
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 95
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 65
-  , 66
-  , 67
-  , 68
-  , 69
-  , 70
-  , 71
-  , 72
-  , 73
-  , 74
-  , 75
-  , 76
-  , 77
-  , 78
-  , 79
-  , 80
-  , 81
-  , 82
-  , 83
-  , 84
-  , 85
-  , 86
-  , 87
-  , 88
-  , 89
-  , 90
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 97
-  , 98
-  , 99
-  , 100
-  , 101
-  , 102
-  , 103
-  , 104
-  , 105
-  , 106
-  , 107
-  , 108
-  , 109
-  , 110
-  , 111
-  , 112
-  , 113
-  , 114
-  , 115
-  , 116
-  , 117
-  , 118
-  , 119
-  , 120
-  , 121
-  , 122
-  , 48
-  , 49
-  , 50
-  , 51
-  , 52
-  , 53
-  , 54
-  , 55
-  , 56
-  , 57
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  ]
-
-alex_deflt :: Array Int Int
-alex_deflt = listArray (0 :: Int, 73)
-  [ -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , 13
-  , 13
-  , -1
-  , -1
-  , 21
-  , 21
-  , -1
-  , -1
-  , -1
-  , -1
-  , 23
-  , 23
-  , 23
-  , -1
-  , 23
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  , -1
-  ]
-
-alex_accept = listArray (0 :: Int, 73)
-  [ AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccNone
-  , AlexAccSkip
-  , AlexAccSkip
-  , AlexAcc 49
-  , AlexAcc 48
-  , AlexAcc 47
-  , AlexAcc 46
-  , AlexAcc 45
-  , AlexAcc 44
-  , AlexAcc 43
-  , AlexAcc 42
-  , AlexAcc 41
-  , AlexAcc 40
-  , AlexAcc 39
-  , AlexAcc 38
-  , AlexAcc 37
-  , AlexAcc 36
-  , AlexAcc 35
-  , AlexAcc 34
-  , AlexAcc 33
-  , AlexAcc 32
-  , AlexAcc 31
-  , AlexAcc 30
-  , AlexAcc 29
-  , AlexAcc 28
-  , AlexAcc 27
-  , AlexAcc 26
-  , AlexAcc 25
-  , AlexAcc 24
-  , AlexAcc 23
-  , AlexAcc 22
-  , AlexAcc 21
-  , AlexAcc 20
-  , AlexAcc 19
-  , AlexAcc 18
-  , AlexAcc 17
-  , AlexAcc 16
-  , AlexAcc 15
-  , AlexAcc 14
-  , AlexAcc 13
-  , AlexAcc 12
-  , AlexAcc 11
-  , AlexAcc 10
-  , AlexAcc 9
-  , AlexAcc 8
-  , AlexAcc 7
-  , AlexAcc 6
-  , AlexAcc 5
-  , AlexAcc 4
-  , AlexAcc 3
-  , AlexAcc 2
-  , AlexAcc 1
-  , AlexAcc 0
-  ]
-
-alex_actions = array (0 :: Int, 50)
-  [ (49,alex_action_2)
-  , (48,alex_action_3)
-  , (47,alex_action_4)
-  , (46,alex_action_5)
-  , (45,alex_action_6)
-  , (44,alex_action_7)
-  , (43,alex_action_8)
-  , (42,alex_action_9)
-  , (41,alex_action_10)
-  , (40,alex_action_11)
-  , (39,alex_action_12)
-  , (38,alex_action_13)
-  , (37,alex_action_14)
-  , (36,alex_action_15)
-  , (35,alex_action_16)
-  , (34,alex_action_17)
-  , (33,alex_action_18)
-  , (32,alex_action_19)
-  , (31,alex_action_20)
-  , (30,alex_action_21)
-  , (29,alex_action_22)
-  , (28,alex_action_23)
-  , (27,alex_action_24)
-  , (26,alex_action_25)
-  , (25,alex_action_25)
-  , (24,alex_action_25)
-  , (23,alex_action_25)
-  , (22,alex_action_25)
-  , (21,alex_action_25)
-  , (20,alex_action_25)
-  , (19,alex_action_25)
-  , (18,alex_action_25)
-  , (17,alex_action_25)
-  , (16,alex_action_25)
-  , (15,alex_action_25)
-  , (14,alex_action_25)
-  , (13,alex_action_25)
-  , (12,alex_action_25)
-  , (11,alex_action_25)
-  , (10,alex_action_25)
-  , (9,alex_action_25)
-  , (8,alex_action_25)
-  , (7,alex_action_25)
-  , (6,alex_action_25)
-  , (5,alex_action_25)
-  , (4,alex_action_25)
-  , (3,alex_action_26)
-  , (2,alex_action_27)
-  , (1,alex_action_28)
-  , (0,alex_action_29)
-  ]
-
-{-# LINE 49 "Lexer.x" #-}
-
---token type:
-data Token  =
-    TokenFilter AlexPosn         |
-    TokenIsEmpty AlexPosn         |
-    TokenContains AlexPosn         |
-    TokenSetName AlexPosn String |
-    TokenNat AlexPosn Int        |
-    TokenPosNat AlexPosn Int        |
-    TokenVarName AlexPosn String |
-    TokenTrue AlexPosn           |
-    TokenFalse AlexPosn          |
-    TokenString AlexPosn String  |
-    TokenLeftSqBracket AlexPosn  |
-    TokenRightSqBracket AlexPosn |
-    TokenArrow AlexPosn          |
-    TokenisEqual AlexPosn        |
-    TokenisNotEqual AlexPosn     |
-    TokenPlus AlexPosn     |
-    TokenLeftBracket AlexPosn    |
-    TokenRightBracket AlexPosn   |
-    TokenSemiCol AlexPosn        |
-    TokenCol AlexPosn        |
-    TokenLambda AlexPosn         |
-    TokenComma AlexPosn          |
-    TokenFullStop AlexPosn       |
-    TokenInSet AlexPosn          |
-    TokenXProduct AlexPosn       |
-    TokenXXProduct AlexPosn       |
-    TokenOutSet AlexPosn         |
-    TokenMap AlexPosn
-    deriving  (Eq, Show)
-
-
-pos :: Token -> AlexPosn
-
-pos token = case token of
-    (TokenFilter p ) -> p        
-    (TokenIsEmpty p ) -> p        
-    (TokenContains p ) -> p        
-    (TokenSetName p _) -> p 
-    (TokenNat p _) -> p        
-    (TokenPosNat p _) -> p        
-    (TokenVarName p _) -> p 
-    (TokenTrue p ) -> p          
-    (TokenFalse p ) -> p         
-    (TokenString p _) -> p  
-    (TokenLeftSqBracket p ) -> p 
-    (TokenRightSqBracket p ) -> p
-    (TokenArrow p ) -> p         
-    (TokenisEqual p ) -> p       
-    (TokenisNotEqual p ) -> p    
-    (TokenPlus p ) -> p    
-    (TokenLeftBracket p ) -> p   
-    (TokenRightBracket p ) -> p  
-    (TokenSemiCol p ) -> p       
-    (TokenCol p ) -> p       
-    (TokenLambda p ) -> p        
-    (TokenComma p ) -> p         
-    (TokenFullStop p ) -> p      
-    (TokenInSet p ) -> p         
-    (TokenXProduct p ) -> p      
-    (TokenXXProduct p ) -> p      
-    (TokenOutSet p ) -> p        
-    (TokenMap p) -> p
-
-
-alex_action_2 = \p s -> TokenContains p 
-alex_action_3 = \p s -> TokenIsEmpty p 
-alex_action_4 = \p s -> TokenFilter p 
-alex_action_5 = \p s -> TokenTrue p 
-alex_action_6 = \p s -> TokenFalse p 
-alex_action_7 = \p s -> TokenInSet p 
-alex_action_8 = \p s -> TokenOutSet p 
-alex_action_9 = \p s -> TokenLeftSqBracket p 
-alex_action_10 = \p s -> TokenRightSqBracket p 
-alex_action_11 = \p s -> TokenArrow p 
-alex_action_12 = \p s -> TokenisEqual p 
-alex_action_13 = \p s -> TokenisNotEqual p 
-alex_action_14 = \p s -> TokenPlus p 
-alex_action_15 = \p s -> TokenLeftBracket p 
-alex_action_16 = \p s -> TokenRightBracket p 
-alex_action_17 = \p s -> TokenCol p 
-alex_action_18 = \p s -> TokenSemiCol p 
-alex_action_19 = \p s -> TokenLambda p 
-alex_action_20 = \p s -> TokenComma p 
-alex_action_21 = \p s -> TokenFullStop p 
-alex_action_22 = \p s -> TokenXProduct p 
-alex_action_23 = \p s -> TokenXXProduct p 
-alex_action_24 = \p s -> TokenMap p 
-alex_action_25 = \p s -> TokenVarName p s 
-alex_action_26 = \p s -> TokenSetName p s 
-alex_action_27 = \p s -> TokenPosNat p (read s) 
-alex_action_28 = \p s -> TokenNat p (read s) 
-alex_action_29 = \p s -> TokenString p (init.tail $ s) 
-{-# LINE 1 "templates/GenericTemplate.hs" #-}
--- -----------------------------------------------------------------------------
--- ALEX TEMPLATE
---
--- This code is in the PUBLIC DOMAIN; you may copy it freely and use
--- it for any purpose whatsoever.
-
--- -----------------------------------------------------------------------------
--- INTERNALS and main scanner engine
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-alexIndexInt16OffAddr arr off = arr ! off
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-alexIndexInt32OffAddr arr off = arr ! off
-
-
-
-
-
-
-
-
-
-
-
-quickIndex arr i = arr ! i
-
-
--- -----------------------------------------------------------------------------
--- Main lexing routines
-
-data AlexReturn a
-  = AlexEOF
-  | AlexError  !AlexInput
-  | AlexSkip   !AlexInput !Int
-  | AlexToken  !AlexInput !Int a
-
--- alexScan :: AlexInput -> StartCode -> AlexReturn a
-alexScan input__ (sc)
-  = alexScanUser undefined input__ (sc)
-
-alexScanUser user__ input__ (sc)
-  = case alex_scan_tkn user__ input__ (0) input__ sc AlexNone of
-  (AlexNone, input__') ->
-    case alexGetByte input__ of
-      Nothing ->
-
-
-
-                                   AlexEOF
-      Just _ ->
-
-
-
-                                   AlexError input__'
-
-  (AlexLastSkip input__'' len, _) ->
-
-
-
-    AlexSkip input__'' len
-
-  (AlexLastAcc k input__''' len, _) ->
-
-
-
-    AlexToken input__''' len (alex_actions ! k)
-
-
--- Push the input through the DFA, remembering the most recent accepting
--- state it encountered.
-
-alex_scan_tkn user__ orig_input len input__ s last_acc =
-  input__ `seq` -- strict in the input
-  let
-  new_acc = (check_accs (alex_accept `quickIndex` (s)))
-  in
-  new_acc `seq`
-  case alexGetByte input__ of
-     Nothing -> (new_acc, input__)
-     Just (c, new_input) ->
-
-
-
-      case fromIntegral c of { (ord_c) ->
-        let
-                base   = alexIndexInt32OffAddr alex_base s
-                offset = (base + ord_c)
-                check  = alexIndexInt16OffAddr alex_check offset
-
-                new_s = if (offset >= (0)) && (check == ord_c)
-                          then alexIndexInt16OffAddr alex_table offset
-                          else alexIndexInt16OffAddr alex_deflt s
-        in
-        case new_s of
-            (-1) -> (new_acc, input__)
-                -- on an error, we want to keep the input *before* the
-                -- character that failed, not after.
-            _ -> alex_scan_tkn user__ orig_input (if c < 0x80 || c >= 0xC0 then (len + (1)) else len)
-                                                -- note that the length is increased ONLY if this is the 1st byte in a char encoding)
-                        new_input new_s new_acc
-      }
-  where
-        check_accs (AlexAccNone) = last_acc
-        check_accs (AlexAcc a  ) = AlexLastAcc a input__ (len)
-        check_accs (AlexAccSkip) = AlexLastSkip  input__ (len)
-
-        check_accs (AlexAccPred a predx rest)
-           | predx user__ orig_input (len) input__
-           = AlexLastAcc a input__ (len)
-           | otherwise
-           = check_accs rest
-        check_accs (AlexAccSkipPred predx rest)
-           | predx user__ orig_input (len) input__
-           = AlexLastSkip input__ (len)
-           | otherwise
-           = check_accs rest
-
-
-data AlexLastAcc
-  = AlexNone
-  | AlexLastAcc !Int !AlexInput !Int
-  | AlexLastSkip     !AlexInput !Int
-
-data AlexAcc user
-  = AlexAccNone
-  | AlexAcc Int
-  | AlexAccSkip
-
-  | AlexAccPred Int (AlexAccPred user) (AlexAcc user)
-  | AlexAccSkipPred (AlexAccPred user) (AlexAcc user)
-
-type AlexAccPred user = user -> AlexInput -> Int -> AlexInput -> Bool
-
--- -----------------------------------------------------------------------------
--- Predicates on a rule
-
-alexAndPred p1 p2 user__ in1 len in2
-  = p1 user__ in1 len in2 && p2 user__ in1 len in2
-
---alexPrevCharIsPred :: Char -> AlexAccPred _
-alexPrevCharIs c _ input__ _ _ = c == alexInputPrevChar input__
-
-alexPrevCharMatches f _ input__ _ _ = f (alexInputPrevChar input__)
-
---alexPrevCharIsOneOfPred :: Array Char Bool -> AlexAccPred _
-alexPrevCharIsOneOf arr _ input__ _ _ = arr ! alexInputPrevChar input__
-
---alexRightContext :: Int -> AlexAccPred _
-alexRightContext (sc) user__ _ _ input__ =
-     case alex_scan_tkn user__ input__ (0) input__ sc AlexNone of
-          (AlexNone, _) -> False
-          _ -> True
-        -- TODO: there's no need to find the longest
-        -- match when checking the right context, just
-        -- the first match will do.
-
diff --git a/P.csv b/P.csv
deleted file mode 100644
index b33bda1b93503ff9aa2ebb1751bb1a752a95692d..0000000000000000000000000000000000000000
--- a/P.csv
+++ /dev/null
@@ -1,4 +0,0 @@
-1 ,5 ,4 ,
-2 , ,2 ,
-3 ,7 ,1 ,2
-4 ,8 , ,
\ No newline at end of file
diff --git a/P42.csv b/P42.csv
deleted file mode 100644
index ae56f619e71099db05328103bf595edc62b35956..0000000000000000000000000000000000000000
--- a/P42.csv
+++ /dev/null
@@ -1,5 +0,0 @@
-David , Beckham
-Pele ,
-Diego , Maradona
-Cristiano, Ronaldo
-Ronaldinho ,
\ No newline at end of file
diff --git a/Parser.hs b/Parser.hs
deleted file mode 100644
index a16a0175c20b12fafd5129acda0805aedda9e9f5..0000000000000000000000000000000000000000
--- a/Parser.hs
+++ /dev/null
@@ -1,1458 +0,0 @@
-{-# OPTIONS_GHC -w #-}
-module Parser where
-import Lexer
-import Types
-import CSV
-import qualified Data.Array as Happy_Data_Array
-import qualified Data.Bits as Bits
-import Control.Applicative(Applicative(..))
-import Control.Monad (ap)
-
--- parser produced by Happy Version 1.20.0
-
-data HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13
-	= HappyTerminal (Token)
-	| HappyErrorToken Prelude.Int
-	| HappyAbsSyn4 t4
-	| HappyAbsSyn5 t5
-	| HappyAbsSyn6 t6
-	| HappyAbsSyn7 t7
-	| HappyAbsSyn8 t8
-	| HappyAbsSyn9 t9
-	| HappyAbsSyn10 t10
-	| HappyAbsSyn11 t11
-	| HappyAbsSyn12 t12
-	| HappyAbsSyn13 t13
-
-happyExpList :: Happy_Data_Array.Array Prelude.Int Prelude.Int
-happyExpList = Happy_Data_Array.listArray (0,182) ([16384,0,0,0,2,0,0,64,0,0,0,0,0,0,0,0,16384,0,4,0,0,8,0,64,0,0,52000,33792,798,2048,0,0,0,0,0,0,0,0,0,6144,1557,48,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,38464,2049,1597,0,1024,0,0,0,0,0,0,0,0,0,0,0,2304,0,0,22784,8198,6388,0,0,0,0,0,0,0,0,0,0,49152,12328,416,0,0,512,0,0,4096,0,8,0,0,35840,834,24,0,1,0,38464,2049,1597,45568,16396,12776,36864,101,36674,32769,812,31248,12,6500,53376,99,52000,33792,798,22784,8198,6388,51200,50,51105,16384,406,15624,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,4,0,0,0,0,0,4,0,0,34136,12294,0,0,0,32768,812,31248,12,0,16,0,0,2048,0,22784,8198,6388,51200,50,51105,16384,406,15624,6,6144,1541,50,0,0,0,0,0,0,0,1,0,0,2048,0,0,0,0,0,0,0,0,38464,2049,1597,0,1024,0,0,0,0,32768,812,31248,12,32768,0,0,52000,33792,798,0,0,0,51200,50,51105,0,0,0,0,0,0,0,0,0,0,0,512,0,0,0,0,0
-	])
-
-{-# NOINLINE happyExpListPerState #-}
-happyExpListPerState st =
-    token_strs_expected
-  where token_strs = ["error","%dummy","%start_parseSource","Prog","SetDecl","SetDecls","Instructions","Expr","PredefFunc","SetNames","VarNames","Exprs","Nats","filter","in","out","SetName","Nat","PosNat","VarName","true","false","Str","'['","'{'","'}'","']'","\"->\"","\"==\"","\"/=\"","'('","')'","';'","':'","'\\\\'","','","'.'","'+'","x","map","xx","contains","isEmpty","let","if","else","then","'='","or","and","%eof"]
-        bit_start = st Prelude.* 51
-        bit_end = (st Prelude.+ 1) Prelude.* 51
-        read_bit = readArrayBit happyExpList
-        bits = Prelude.map read_bit [bit_start..bit_end Prelude.- 1]
-        bits_indexed = Prelude.zip bits [0..50]
-        token_strs_expected = Prelude.concatMap f bits_indexed
-        f (Prelude.False, _) = []
-        f (Prelude.True, nr) = [token_strs Prelude.!! nr]
-
-action_0 (15) = happyShift action_2
-action_0 (4) = happyGoto action_3
-action_0 _ = happyFail (happyExpListPerState 0)
-
-action_1 (15) = happyShift action_2
-action_1 _ = happyFail (happyExpListPerState 1)
-
-action_2 (17) = happyShift action_6
-action_2 (5) = happyGoto action_4
-action_2 (6) = happyGoto action_5
-action_2 _ = happyFail (happyExpListPerState 2)
-
-action_3 (51) = happyAccept
-action_3 _ = happyFail (happyExpListPerState 3)
-
-action_4 _ = happyReduce_3
-
-action_5 (16) = happyShift action_8
-action_5 (36) = happyShift action_9
-action_5 _ = happyFail (happyExpListPerState 5)
-
-action_6 (34) = happyShift action_7
-action_6 _ = happyFail (happyExpListPerState 6)
-
-action_7 (18) = happyShift action_28
-action_7 _ = happyFail (happyExpListPerState 7)
-
-action_8 (14) = happyShift action_14
-action_8 (17) = happyShift action_15
-action_8 (18) = happyShift action_16
-action_8 (20) = happyShift action_17
-action_8 (23) = happyShift action_18
-action_8 (24) = happyShift action_19
-action_8 (35) = happyShift action_20
-action_8 (40) = happyShift action_21
-action_8 (42) = happyShift action_22
-action_8 (43) = happyShift action_23
-action_8 (44) = happyShift action_24
-action_8 (45) = happyShift action_25
-action_8 (49) = happyShift action_26
-action_8 (50) = happyShift action_27
-action_8 (7) = happyGoto action_11
-action_8 (8) = happyGoto action_12
-action_8 (9) = happyGoto action_13
-action_8 _ = happyFail (happyExpListPerState 8)
-
-action_9 (17) = happyShift action_6
-action_9 (5) = happyGoto action_10
-action_9 _ = happyFail (happyExpListPerState 9)
-
-action_10 _ = happyReduce_4
-
-action_11 _ = happyReduce_1
-
-action_12 (24) = happyShift action_35
-action_12 (25) = happyShift action_36
-action_12 (29) = happyShift action_37
-action_12 (31) = happyShift action_38
-action_12 (33) = happyShift action_39
-action_12 (38) = happyShift action_40
-action_12 (39) = happyShift action_41
-action_12 (49) = happyShift action_42
-action_12 (50) = happyShift action_43
-action_12 _ = happyFail (happyExpListPerState 12)
-
-action_13 _ = happyReduce_23
-
-action_14 _ = happyReduce_27
-
-action_15 _ = happyReduce_21
-
-action_16 _ = happyReduce_22
-
-action_17 _ = happyReduce_20
-
-action_18 _ = happyReduce_15
-
-action_19 (14) = happyShift action_14
-action_19 (17) = happyShift action_15
-action_19 (18) = happyShift action_16
-action_19 (20) = happyShift action_17
-action_19 (23) = happyShift action_18
-action_19 (24) = happyShift action_19
-action_19 (35) = happyShift action_20
-action_19 (40) = happyShift action_21
-action_19 (42) = happyShift action_22
-action_19 (43) = happyShift action_23
-action_19 (44) = happyShift action_24
-action_19 (45) = happyShift action_25
-action_19 (49) = happyShift action_26
-action_19 (50) = happyShift action_27
-action_19 (8) = happyGoto action_33
-action_19 (9) = happyGoto action_13
-action_19 (12) = happyGoto action_34
-action_19 _ = happyFail (happyExpListPerState 19)
-
-action_20 (31) = happyShift action_32
-action_20 _ = happyFail (happyExpListPerState 20)
-
-action_21 _ = happyReduce_30
-
-action_22 _ = happyReduce_28
-
-action_23 (24) = happyReduce_29
-action_23 (25) = happyReduce_29
-action_23 (26) = happyReduce_29
-action_23 (27) = happyReduce_29
-action_23 (29) = happyReduce_29
-action_23 (31) = happyReduce_29
-action_23 (32) = happyReduce_29
-action_23 (33) = happyReduce_29
-action_23 (36) = happyReduce_29
-action_23 (38) = happyReduce_29
-action_23 (39) = happyReduce_29
-action_23 (46) = happyReduce_29
-action_23 (47) = happyReduce_29
-action_23 (49) = happyReduce_29
-action_23 (50) = happyReduce_29
-action_23 _ = happyReduce_29
-
-action_24 (17) = happyShift action_30
-action_24 (20) = happyShift action_31
-action_24 _ = happyFail (happyExpListPerState 24)
-
-action_25 (14) = happyShift action_14
-action_25 (17) = happyShift action_15
-action_25 (18) = happyShift action_16
-action_25 (20) = happyShift action_17
-action_25 (23) = happyShift action_18
-action_25 (24) = happyShift action_19
-action_25 (35) = happyShift action_20
-action_25 (40) = happyShift action_21
-action_25 (42) = happyShift action_22
-action_25 (43) = happyShift action_23
-action_25 (44) = happyShift action_24
-action_25 (45) = happyShift action_25
-action_25 (49) = happyShift action_26
-action_25 (50) = happyShift action_27
-action_25 (8) = happyGoto action_29
-action_25 (9) = happyGoto action_13
-action_25 _ = happyFail (happyExpListPerState 25)
-
-action_26 _ = happyReduce_32
-
-action_27 _ = happyReduce_31
-
-action_28 _ = happyReduce_2
-
-action_29 (24) = happyShift action_35
-action_29 (25) = happyShift action_36
-action_29 (29) = happyShift action_37
-action_29 (31) = happyShift action_38
-action_29 (38) = happyShift action_40
-action_29 (39) = happyShift action_41
-action_29 (47) = happyShift action_59
-action_29 (49) = happyShift action_42
-action_29 (50) = happyShift action_43
-action_29 _ = happyFail (happyExpListPerState 29)
-
-action_30 (48) = happyShift action_58
-action_30 _ = happyFail (happyExpListPerState 30)
-
-action_31 (48) = happyShift action_57
-action_31 _ = happyFail (happyExpListPerState 31)
-
-action_32 (20) = happyShift action_56
-action_32 (11) = happyGoto action_55
-action_32 _ = happyFail (happyExpListPerState 32)
-
-action_33 (24) = happyShift action_35
-action_33 (25) = happyShift action_36
-action_33 (29) = happyShift action_37
-action_33 (31) = happyShift action_38
-action_33 (36) = happyShift action_54
-action_33 (38) = happyShift action_40
-action_33 (39) = happyShift action_41
-action_33 (49) = happyShift action_42
-action_33 (50) = happyShift action_43
-action_33 _ = happyReduce_37
-
-action_34 (27) = happyShift action_53
-action_34 _ = happyFail (happyExpListPerState 34)
-
-action_35 (14) = happyShift action_14
-action_35 (17) = happyShift action_15
-action_35 (18) = happyShift action_16
-action_35 (20) = happyShift action_17
-action_35 (23) = happyShift action_18
-action_35 (24) = happyShift action_19
-action_35 (35) = happyShift action_20
-action_35 (40) = happyShift action_21
-action_35 (42) = happyShift action_22
-action_35 (43) = happyShift action_23
-action_35 (44) = happyShift action_24
-action_35 (45) = happyShift action_25
-action_35 (49) = happyShift action_26
-action_35 (50) = happyShift action_27
-action_35 (8) = happyGoto action_52
-action_35 (9) = happyGoto action_13
-action_35 _ = happyFail (happyExpListPerState 35)
-
-action_36 (14) = happyShift action_14
-action_36 (17) = happyShift action_15
-action_36 (18) = happyShift action_16
-action_36 (20) = happyShift action_17
-action_36 (23) = happyShift action_18
-action_36 (24) = happyShift action_19
-action_36 (35) = happyShift action_20
-action_36 (40) = happyShift action_21
-action_36 (42) = happyShift action_22
-action_36 (43) = happyShift action_23
-action_36 (44) = happyShift action_24
-action_36 (45) = happyShift action_25
-action_36 (49) = happyShift action_26
-action_36 (50) = happyShift action_27
-action_36 (8) = happyGoto action_33
-action_36 (9) = happyGoto action_13
-action_36 (12) = happyGoto action_51
-action_36 _ = happyFail (happyExpListPerState 36)
-
-action_37 (14) = happyShift action_14
-action_37 (17) = happyShift action_15
-action_37 (18) = happyShift action_16
-action_37 (20) = happyShift action_17
-action_37 (23) = happyShift action_18
-action_37 (24) = happyShift action_19
-action_37 (35) = happyShift action_20
-action_37 (40) = happyShift action_21
-action_37 (42) = happyShift action_22
-action_37 (43) = happyShift action_23
-action_37 (44) = happyShift action_24
-action_37 (45) = happyShift action_25
-action_37 (49) = happyShift action_26
-action_37 (50) = happyShift action_27
-action_37 (8) = happyGoto action_50
-action_37 (9) = happyGoto action_13
-action_37 _ = happyFail (happyExpListPerState 37)
-
-action_38 (14) = happyShift action_14
-action_38 (17) = happyShift action_15
-action_38 (18) = happyShift action_16
-action_38 (20) = happyShift action_17
-action_38 (23) = happyShift action_18
-action_38 (24) = happyShift action_19
-action_38 (35) = happyShift action_20
-action_38 (40) = happyShift action_21
-action_38 (42) = happyShift action_22
-action_38 (43) = happyShift action_23
-action_38 (44) = happyShift action_24
-action_38 (45) = happyShift action_25
-action_38 (49) = happyShift action_26
-action_38 (50) = happyShift action_27
-action_38 (8) = happyGoto action_33
-action_38 (9) = happyGoto action_13
-action_38 (12) = happyGoto action_49
-action_38 _ = happyFail (happyExpListPerState 38)
-
-action_39 (14) = happyShift action_14
-action_39 (17) = happyShift action_15
-action_39 (18) = happyShift action_16
-action_39 (20) = happyShift action_17
-action_39 (23) = happyShift action_18
-action_39 (24) = happyShift action_19
-action_39 (35) = happyShift action_20
-action_39 (40) = happyShift action_21
-action_39 (42) = happyShift action_22
-action_39 (43) = happyShift action_23
-action_39 (44) = happyShift action_24
-action_39 (45) = happyShift action_25
-action_39 (49) = happyShift action_26
-action_39 (50) = happyShift action_27
-action_39 (7) = happyGoto action_48
-action_39 (8) = happyGoto action_12
-action_39 (9) = happyGoto action_13
-action_39 _ = happyReduce_5
-
-action_40 (14) = happyShift action_14
-action_40 (17) = happyShift action_15
-action_40 (18) = happyShift action_16
-action_40 (20) = happyShift action_17
-action_40 (23) = happyShift action_18
-action_40 (24) = happyShift action_19
-action_40 (35) = happyShift action_20
-action_40 (40) = happyShift action_21
-action_40 (42) = happyShift action_22
-action_40 (43) = happyShift action_23
-action_40 (44) = happyShift action_24
-action_40 (45) = happyShift action_25
-action_40 (49) = happyShift action_26
-action_40 (50) = happyShift action_27
-action_40 (8) = happyGoto action_47
-action_40 (9) = happyGoto action_13
-action_40 _ = happyFail (happyExpListPerState 40)
-
-action_41 (14) = happyShift action_14
-action_41 (17) = happyShift action_15
-action_41 (18) = happyShift action_16
-action_41 (20) = happyShift action_17
-action_41 (23) = happyShift action_18
-action_41 (24) = happyShift action_19
-action_41 (35) = happyShift action_20
-action_41 (40) = happyShift action_21
-action_41 (42) = happyShift action_22
-action_41 (43) = happyShift action_23
-action_41 (44) = happyShift action_24
-action_41 (45) = happyShift action_25
-action_41 (49) = happyShift action_26
-action_41 (50) = happyShift action_27
-action_41 (8) = happyGoto action_46
-action_41 (9) = happyGoto action_13
-action_41 _ = happyFail (happyExpListPerState 41)
-
-action_42 (14) = happyShift action_14
-action_42 (17) = happyShift action_15
-action_42 (18) = happyShift action_16
-action_42 (20) = happyShift action_17
-action_42 (23) = happyShift action_18
-action_42 (24) = happyShift action_19
-action_42 (35) = happyShift action_20
-action_42 (40) = happyShift action_21
-action_42 (42) = happyShift action_22
-action_42 (43) = happyShift action_23
-action_42 (44) = happyShift action_24
-action_42 (45) = happyShift action_25
-action_42 (49) = happyShift action_26
-action_42 (50) = happyShift action_27
-action_42 (8) = happyGoto action_45
-action_42 (9) = happyGoto action_13
-action_42 _ = happyFail (happyExpListPerState 42)
-
-action_43 (14) = happyShift action_14
-action_43 (17) = happyShift action_15
-action_43 (18) = happyShift action_16
-action_43 (20) = happyShift action_17
-action_43 (23) = happyShift action_18
-action_43 (24) = happyShift action_19
-action_43 (35) = happyShift action_20
-action_43 (40) = happyShift action_21
-action_43 (42) = happyShift action_22
-action_43 (43) = happyShift action_23
-action_43 (44) = happyShift action_24
-action_43 (45) = happyShift action_25
-action_43 (49) = happyShift action_26
-action_43 (50) = happyShift action_27
-action_43 (8) = happyGoto action_44
-action_43 (9) = happyGoto action_13
-action_43 _ = happyFail (happyExpListPerState 43)
-
-action_44 (24) = happyShift action_35
-action_44 (25) = happyShift action_36
-action_44 (29) = happyShift action_37
-action_44 (31) = happyShift action_38
-action_44 (38) = happyShift action_40
-action_44 (39) = happyShift action_41
-action_44 (49) = happyShift action_42
-action_44 (50) = happyShift action_43
-action_44 _ = happyReduce_25
-
-action_45 (24) = happyShift action_35
-action_45 (25) = happyShift action_36
-action_45 (29) = happyShift action_37
-action_45 (31) = happyShift action_38
-action_45 (38) = happyShift action_40
-action_45 (39) = happyShift action_41
-action_45 (49) = happyShift action_42
-action_45 (50) = happyShift action_43
-action_45 _ = happyReduce_24
-
-action_46 (24) = happyShift action_35
-action_46 (25) = happyShift action_36
-action_46 (29) = happyShift action_37
-action_46 (31) = happyShift action_38
-action_46 (38) = happyShift action_40
-action_46 (39) = happyShift action_41
-action_46 (49) = happyShift action_42
-action_46 (50) = happyShift action_43
-action_46 _ = happyReduce_10
-
-action_47 (24) = happyShift action_35
-action_47 (25) = happyShift action_36
-action_47 (29) = happyShift action_37
-action_47 (31) = happyShift action_38
-action_47 (38) = happyShift action_40
-action_47 (39) = happyShift action_41
-action_47 (49) = happyShift action_42
-action_47 (50) = happyShift action_43
-action_47 _ = happyReduce_11
-
-action_48 _ = happyReduce_6
-
-action_49 (32) = happyShift action_69
-action_49 _ = happyFail (happyExpListPerState 49)
-
-action_50 (24) = happyShift action_35
-action_50 (25) = happyShift action_36
-action_50 (29) = happyShift action_37
-action_50 (31) = happyShift action_38
-action_50 (38) = happyShift action_40
-action_50 (39) = happyShift action_41
-action_50 (49) = happyShift action_42
-action_50 (50) = happyShift action_43
-action_50 _ = happyReduce_9
-
-action_51 (26) = happyShift action_68
-action_51 _ = happyFail (happyExpListPerState 51)
-
-action_52 (24) = happyShift action_35
-action_52 (25) = happyShift action_36
-action_52 (27) = happyShift action_66
-action_52 (29) = happyShift action_37
-action_52 (31) = happyShift action_38
-action_52 (36) = happyShift action_67
-action_52 (38) = happyShift action_40
-action_52 (39) = happyShift action_41
-action_52 (49) = happyShift action_42
-action_52 (50) = happyShift action_43
-action_52 _ = happyFail (happyExpListPerState 52)
-
-action_53 _ = happyReduce_14
-
-action_54 (14) = happyShift action_14
-action_54 (17) = happyShift action_15
-action_54 (18) = happyShift action_16
-action_54 (20) = happyShift action_17
-action_54 (23) = happyShift action_18
-action_54 (24) = happyShift action_19
-action_54 (35) = happyShift action_20
-action_54 (40) = happyShift action_21
-action_54 (42) = happyShift action_22
-action_54 (43) = happyShift action_23
-action_54 (44) = happyShift action_24
-action_54 (45) = happyShift action_25
-action_54 (49) = happyShift action_26
-action_54 (50) = happyShift action_27
-action_54 (8) = happyGoto action_33
-action_54 (9) = happyGoto action_13
-action_54 (12) = happyGoto action_65
-action_54 _ = happyFail (happyExpListPerState 54)
-
-action_55 (32) = happyShift action_64
-action_55 _ = happyFail (happyExpListPerState 55)
-
-action_56 (36) = happyShift action_63
-action_56 _ = happyReduce_35
-
-action_57 (14) = happyShift action_14
-action_57 (17) = happyShift action_15
-action_57 (18) = happyShift action_16
-action_57 (20) = happyShift action_17
-action_57 (23) = happyShift action_18
-action_57 (24) = happyShift action_19
-action_57 (35) = happyShift action_20
-action_57 (40) = happyShift action_21
-action_57 (42) = happyShift action_22
-action_57 (43) = happyShift action_23
-action_57 (44) = happyShift action_24
-action_57 (45) = happyShift action_25
-action_57 (49) = happyShift action_26
-action_57 (50) = happyShift action_27
-action_57 (8) = happyGoto action_62
-action_57 (9) = happyGoto action_13
-action_57 _ = happyFail (happyExpListPerState 57)
-
-action_58 (14) = happyShift action_14
-action_58 (17) = happyShift action_15
-action_58 (18) = happyShift action_16
-action_58 (20) = happyShift action_17
-action_58 (23) = happyShift action_18
-action_58 (24) = happyShift action_19
-action_58 (35) = happyShift action_20
-action_58 (40) = happyShift action_21
-action_58 (42) = happyShift action_22
-action_58 (43) = happyShift action_23
-action_58 (44) = happyShift action_24
-action_58 (45) = happyShift action_25
-action_58 (49) = happyShift action_26
-action_58 (50) = happyShift action_27
-action_58 (8) = happyGoto action_61
-action_58 (9) = happyGoto action_13
-action_58 _ = happyFail (happyExpListPerState 58)
-
-action_59 (14) = happyShift action_14
-action_59 (17) = happyShift action_15
-action_59 (18) = happyShift action_16
-action_59 (20) = happyShift action_17
-action_59 (23) = happyShift action_18
-action_59 (24) = happyShift action_19
-action_59 (35) = happyShift action_20
-action_59 (40) = happyShift action_21
-action_59 (42) = happyShift action_22
-action_59 (43) = happyShift action_23
-action_59 (44) = happyShift action_24
-action_59 (45) = happyShift action_25
-action_59 (49) = happyShift action_26
-action_59 (50) = happyShift action_27
-action_59 (8) = happyGoto action_60
-action_59 (9) = happyGoto action_13
-action_59 _ = happyFail (happyExpListPerState 59)
-
-action_60 (24) = happyShift action_35
-action_60 (25) = happyShift action_36
-action_60 (29) = happyShift action_37
-action_60 (31) = happyShift action_38
-action_60 (38) = happyShift action_40
-action_60 (39) = happyShift action_41
-action_60 (46) = happyShift action_74
-action_60 (49) = happyShift action_42
-action_60 (50) = happyShift action_43
-action_60 _ = happyFail (happyExpListPerState 60)
-
-action_61 (24) = happyShift action_35
-action_61 (25) = happyShift action_36
-action_61 (29) = happyShift action_37
-action_61 (31) = happyShift action_38
-action_61 (38) = happyShift action_40
-action_61 (39) = happyShift action_41
-action_61 (49) = happyShift action_42
-action_61 (50) = happyShift action_43
-action_61 _ = happyReduce_18
-
-action_62 (24) = happyShift action_35
-action_62 (25) = happyShift action_36
-action_62 (29) = happyShift action_37
-action_62 (31) = happyShift action_38
-action_62 (38) = happyShift action_40
-action_62 (39) = happyShift action_41
-action_62 (49) = happyShift action_42
-action_62 (50) = happyShift action_43
-action_62 _ = happyReduce_19
-
-action_63 (20) = happyShift action_56
-action_63 (11) = happyGoto action_73
-action_63 _ = happyFail (happyExpListPerState 63)
-
-action_64 (28) = happyShift action_72
-action_64 _ = happyFail (happyExpListPerState 64)
-
-action_65 _ = happyReduce_38
-
-action_66 _ = happyReduce_12
-
-action_67 (14) = happyShift action_14
-action_67 (17) = happyShift action_15
-action_67 (18) = happyShift action_16
-action_67 (20) = happyShift action_17
-action_67 (23) = happyShift action_18
-action_67 (24) = happyShift action_19
-action_67 (35) = happyShift action_20
-action_67 (40) = happyShift action_21
-action_67 (42) = happyShift action_22
-action_67 (43) = happyShift action_23
-action_67 (44) = happyShift action_24
-action_67 (45) = happyShift action_25
-action_67 (49) = happyShift action_26
-action_67 (50) = happyShift action_27
-action_67 (8) = happyGoto action_33
-action_67 (9) = happyGoto action_13
-action_67 (12) = happyGoto action_71
-action_67 _ = happyFail (happyExpListPerState 67)
-
-action_68 (31) = happyShift action_70
-action_68 _ = happyFail (happyExpListPerState 68)
-
-action_69 _ = happyReduce_7
-
-action_70 (14) = happyShift action_14
-action_70 (17) = happyShift action_15
-action_70 (18) = happyShift action_16
-action_70 (20) = happyShift action_17
-action_70 (23) = happyShift action_18
-action_70 (24) = happyShift action_19
-action_70 (35) = happyShift action_20
-action_70 (40) = happyShift action_21
-action_70 (42) = happyShift action_22
-action_70 (43) = happyShift action_23
-action_70 (44) = happyShift action_24
-action_70 (45) = happyShift action_25
-action_70 (49) = happyShift action_26
-action_70 (50) = happyShift action_27
-action_70 (8) = happyGoto action_33
-action_70 (9) = happyGoto action_13
-action_70 (12) = happyGoto action_78
-action_70 _ = happyFail (happyExpListPerState 70)
-
-action_71 (27) = happyShift action_77
-action_71 _ = happyFail (happyExpListPerState 71)
-
-action_72 (14) = happyShift action_14
-action_72 (17) = happyShift action_15
-action_72 (18) = happyShift action_16
-action_72 (20) = happyShift action_17
-action_72 (23) = happyShift action_18
-action_72 (24) = happyShift action_19
-action_72 (35) = happyShift action_20
-action_72 (40) = happyShift action_21
-action_72 (42) = happyShift action_22
-action_72 (43) = happyShift action_23
-action_72 (44) = happyShift action_24
-action_72 (45) = happyShift action_25
-action_72 (49) = happyShift action_26
-action_72 (50) = happyShift action_27
-action_72 (8) = happyGoto action_76
-action_72 (9) = happyGoto action_13
-action_72 _ = happyFail (happyExpListPerState 72)
-
-action_73 _ = happyReduce_36
-
-action_74 (14) = happyShift action_14
-action_74 (17) = happyShift action_15
-action_74 (18) = happyShift action_16
-action_74 (20) = happyShift action_17
-action_74 (23) = happyShift action_18
-action_74 (24) = happyShift action_19
-action_74 (35) = happyShift action_20
-action_74 (40) = happyShift action_21
-action_74 (42) = happyShift action_22
-action_74 (43) = happyShift action_23
-action_74 (44) = happyShift action_24
-action_74 (45) = happyShift action_25
-action_74 (49) = happyShift action_26
-action_74 (50) = happyShift action_27
-action_74 (8) = happyGoto action_75
-action_74 (9) = happyGoto action_13
-action_74 _ = happyFail (happyExpListPerState 74)
-
-action_75 (24) = happyShift action_35
-action_75 (25) = happyShift action_36
-action_75 (29) = happyShift action_37
-action_75 (31) = happyShift action_38
-action_75 (38) = happyShift action_40
-action_75 (39) = happyShift action_41
-action_75 (49) = happyShift action_42
-action_75 (50) = happyShift action_43
-action_75 _ = happyReduce_17
-
-action_76 (24) = happyShift action_35
-action_76 (25) = happyShift action_36
-action_76 (29) = happyShift action_37
-action_76 (31) = happyShift action_38
-action_76 (38) = happyShift action_40
-action_76 (39) = happyShift action_41
-action_76 (49) = happyShift action_42
-action_76 (50) = happyShift action_43
-action_76 _ = happyReduce_16
-
-action_77 _ = happyReduce_13
-
-action_78 (32) = happyShift action_79
-action_78 _ = happyFail (happyExpListPerState 78)
-
-action_79 _ = happyReduce_8
-
-happyReduce_1 = happyReduce 4 4 happyReduction_1
-happyReduction_1 ((HappyAbsSyn7  happy_var_4) `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn6  happy_var_2) `HappyStk`
-	_ `HappyStk`
-	happyRest)
-	 = HappyAbsSyn4
-		 ((happy_var_2,happy_var_4)
-	) `HappyStk` happyRest
-
-happyReduce_2 = happySpecReduce_3  5 happyReduction_2
-happyReduction_2 _
-	_
-	(HappyTerminal (TokenSetName _ happy_var_1))
-	 =  HappyAbsSyn5
-		 (happy_var_1
-	)
-happyReduction_2 _ _ _  = notHappyAtAll 
-
-happyReduce_3 = happySpecReduce_1  6 happyReduction_3
-happyReduction_3 (HappyAbsSyn5  happy_var_1)
-	 =  HappyAbsSyn6
-		 ([happy_var_1]
-	)
-happyReduction_3 _  = notHappyAtAll 
-
-happyReduce_4 = happySpecReduce_3  6 happyReduction_4
-happyReduction_4 (HappyAbsSyn5  happy_var_3)
-	_
-	(HappyAbsSyn6  happy_var_1)
-	 =  HappyAbsSyn6
-		 (happy_var_3:happy_var_1
-	)
-happyReduction_4 _ _ _  = notHappyAtAll 
-
-happyReduce_5 = happySpecReduce_2  7 happyReduction_5
-happyReduction_5 _
-	(HappyAbsSyn8  happy_var_1)
-	 =  HappyAbsSyn7
-		 ([happy_var_1]
-	)
-happyReduction_5 _ _  = notHappyAtAll 
-
-happyReduce_6 = happySpecReduce_3  7 happyReduction_6
-happyReduction_6 (HappyAbsSyn7  happy_var_3)
-	_
-	(HappyAbsSyn8  happy_var_1)
-	 =  HappyAbsSyn7
-		 (happy_var_1:happy_var_3
-	)
-happyReduction_6 _ _ _  = notHappyAtAll 
-
-happyReduce_7 = happyReduce 4 8 happyReduction_7
-happyReduction_7 (_ `HappyStk`
-	(HappyAbsSyn12  happy_var_3) `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn8  happy_var_1) `HappyStk`
-	happyRest)
-	 = HappyAbsSyn8
-		 (FuncCall happy_var_1 [] happy_var_3
-	) `HappyStk` happyRest
-
-happyReduce_8 = happyReduce 7 8 happyReduction_8
-happyReduction_8 (_ `HappyStk`
-	(HappyAbsSyn12  happy_var_6) `HappyStk`
-	_ `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn12  happy_var_3) `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn8  happy_var_1) `HappyStk`
-	happyRest)
-	 = HappyAbsSyn8
-		 (FuncCall happy_var_1 happy_var_3 happy_var_6
-	) `HappyStk` happyRest
-
-happyReduce_9 = happySpecReduce_3  8 happyReduction_9
-happyReduction_9 (HappyAbsSyn8  happy_var_3)
-	_
-	(HappyAbsSyn8  happy_var_1)
-	 =  HappyAbsSyn8
-		 (FuncCall (PredefFunc IsEqual) [] [happy_var_1, happy_var_3]
-	)
-happyReduction_9 _ _ _  = notHappyAtAll 
-
-happyReduce_10 = happySpecReduce_3  8 happyReduction_10
-happyReduction_10 (HappyAbsSyn8  happy_var_3)
-	_
-	(HappyAbsSyn8  happy_var_1)
-	 =  HappyAbsSyn8
-		 (FuncCall (PredefFunc XProduct) [happy_var_1, happy_var_3] []
-	)
-happyReduction_10 _ _ _  = notHappyAtAll 
-
-happyReduce_11 = happySpecReduce_3  8 happyReduction_11
-happyReduction_11 (HappyAbsSyn8  happy_var_3)
-	_
-	(HappyAbsSyn8  happy_var_1)
-	 =  HappyAbsSyn8
-		 (FuncCall (PredefFunc Plus) [happy_var_1, happy_var_3] []
-	)
-happyReduction_11 _ _ _  = notHappyAtAll 
-
-happyReduce_12 = happyReduce 4 8 happyReduction_12
-happyReduction_12 (_ `HappyStk`
-	(HappyAbsSyn8  happy_var_3) `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn8  happy_var_1) `HappyStk`
-	happyRest)
-	 = HappyAbsSyn8
-		 (FuncCall (PredefFunc RecordIndex) [] [happy_var_1, happy_var_3]
-	) `HappyStk` happyRest
-
-happyReduce_13 = happyReduce 6 8 happyReduction_13
-happyReduction_13 (_ `HappyStk`
-	(HappyAbsSyn12  happy_var_5) `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn8  happy_var_3) `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn8  happy_var_1) `HappyStk`
-	happyRest)
-	 = HappyAbsSyn8
-		 (FuncCall (PredefFunc RecordSelect) [] (happy_var_1:happy_var_3:happy_var_5)
-	) `HappyStk` happyRest
-
-happyReduce_14 = happySpecReduce_3  8 happyReduction_14
-happyReduction_14 _
-	(HappyAbsSyn12  happy_var_2)
-	_
-	 =  HappyAbsSyn8
-		 (Record happy_var_2
-	)
-happyReduction_14 _ _ _  = notHappyAtAll 
-
-happyReduce_15 = happySpecReduce_1  8 happyReduction_15
-happyReduction_15 (HappyTerminal (TokenString _ happy_var_1))
-	 =  HappyAbsSyn8
-		 (Types.String $ stripWhitespace happy_var_1
-	)
-happyReduction_15 _  = notHappyAtAll 
-
-happyReduce_16 = happyReduce 6 8 happyReduction_16
-happyReduction_16 ((HappyAbsSyn8  happy_var_6) `HappyStk`
-	_ `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn11  happy_var_3) `HappyStk`
-	_ `HappyStk`
-	_ `HappyStk`
-	happyRest)
-	 = HappyAbsSyn8
-		 (FuncDef [] happy_var_3 happy_var_6
-	) `HappyStk` happyRest
-
-happyReduce_17 = happyReduce 6 8 happyReduction_17
-happyReduction_17 ((HappyAbsSyn8  happy_var_6) `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn8  happy_var_4) `HappyStk`
-	_ `HappyStk`
-	(HappyAbsSyn8  happy_var_2) `HappyStk`
-	_ `HappyStk`
-	happyRest)
-	 = HappyAbsSyn8
-		 (If happy_var_2 happy_var_4 happy_var_6
-	) `HappyStk` happyRest
-
-happyReduce_18 = happyReduce 4 8 happyReduction_18
-happyReduction_18 ((HappyAbsSyn8  happy_var_4) `HappyStk`
-	_ `HappyStk`
-	(HappyTerminal (TokenSetName _ happy_var_2)) `HappyStk`
-	_ `HappyStk`
-	happyRest)
-	 = HappyAbsSyn8
-		 (Let True happy_var_2 happy_var_4
-	) `HappyStk` happyRest
-
-happyReduce_19 = happyReduce 4 8 happyReduction_19
-happyReduction_19 ((HappyAbsSyn8  happy_var_4) `HappyStk`
-	_ `HappyStk`
-	(HappyTerminal (TokenVarName _ happy_var_2)) `HappyStk`
-	_ `HappyStk`
-	happyRest)
-	 = HappyAbsSyn8
-		 (Let False happy_var_2 happy_var_4
-	) `HappyStk` happyRest
-
-happyReduce_20 = happySpecReduce_1  8 happyReduction_20
-happyReduction_20 (HappyTerminal (TokenVarName _ happy_var_1))
-	 =  HappyAbsSyn8
-		 (Var happy_var_1
-	)
-happyReduction_20 _  = notHappyAtAll 
-
-happyReduce_21 = happySpecReduce_1  8 happyReduction_21
-happyReduction_21 (HappyTerminal (TokenSetName _ happy_var_1))
-	 =  HappyAbsSyn8
-		 (Var happy_var_1
-	)
-happyReduction_21 _  = notHappyAtAll 
-
-happyReduce_22 = happySpecReduce_1  8 happyReduction_22
-happyReduction_22 (HappyTerminal (TokenNat _ happy_var_1))
-	 =  HappyAbsSyn8
-		 (Types.Int happy_var_1
-	)
-happyReduction_22 _  = notHappyAtAll 
-
-happyReduce_23 = happySpecReduce_1  8 happyReduction_23
-happyReduction_23 (HappyAbsSyn9  happy_var_1)
-	 =  HappyAbsSyn8
-		 (PredefFunc happy_var_1
-	)
-happyReduction_23 _  = notHappyAtAll 
-
-happyReduce_24 = happySpecReduce_3  8 happyReduction_24
-happyReduction_24 (HappyAbsSyn8  happy_var_3)
-	_
-	(HappyAbsSyn8  happy_var_1)
-	 =  HappyAbsSyn8
-		 (FuncCall (PredefFunc Or) [] [happy_var_1,happy_var_3]
-	)
-happyReduction_24 _ _ _  = notHappyAtAll 
-
-happyReduce_25 = happySpecReduce_3  8 happyReduction_25
-happyReduction_25 (HappyAbsSyn8  happy_var_3)
-	_
-	(HappyAbsSyn8  happy_var_1)
-	 =  HappyAbsSyn8
-		 (FuncCall (PredefFunc And) [] [happy_var_1,happy_var_3]
-	)
-happyReduction_25 _ _ _  = notHappyAtAll 
-
-happyReduce_26 = happySpecReduce_1  9 happyReduction_26
-happyReduction_26 _
-	 =  HappyAbsSyn9
-		 (IsEmpty
-	)
-
-happyReduce_27 = happySpecReduce_1  9 happyReduction_27
-happyReduction_27 _
-	 =  HappyAbsSyn9
-		 (Filter
-	)
-
-happyReduce_28 = happySpecReduce_1  9 happyReduction_28
-happyReduction_28 _
-	 =  HappyAbsSyn9
-		 (Contains
-	)
-
-happyReduce_29 = happySpecReduce_1  9 happyReduction_29
-happyReduction_29 _
-	 =  HappyAbsSyn9
-		 (IsEmpty
-	)
-
-happyReduce_30 = happySpecReduce_1  9 happyReduction_30
-happyReduction_30 _
-	 =  HappyAbsSyn9
-		 (Map
-	)
-
-happyReduce_31 = happySpecReduce_1  9 happyReduction_31
-happyReduction_31 _
-	 =  HappyAbsSyn9
-		 (And
-	)
-
-happyReduce_32 = happySpecReduce_1  9 happyReduction_32
-happyReduction_32 _
-	 =  HappyAbsSyn9
-		 (Or
-	)
-
-happyReduce_33 = happySpecReduce_1  10 happyReduction_33
-happyReduction_33 (HappyTerminal (TokenSetName _ happy_var_1))
-	 =  HappyAbsSyn10
-		 ([happy_var_1]
-	)
-happyReduction_33 _  = notHappyAtAll 
-
-happyReduce_34 = happySpecReduce_3  10 happyReduction_34
-happyReduction_34 (HappyAbsSyn10  happy_var_3)
-	_
-	(HappyTerminal (TokenSetName _ happy_var_1))
-	 =  HappyAbsSyn10
-		 (happy_var_1:happy_var_3
-	)
-happyReduction_34 _ _ _  = notHappyAtAll 
-
-happyReduce_35 = happySpecReduce_1  11 happyReduction_35
-happyReduction_35 (HappyTerminal (TokenVarName _ happy_var_1))
-	 =  HappyAbsSyn11
-		 ([happy_var_1]
-	)
-happyReduction_35 _  = notHappyAtAll 
-
-happyReduce_36 = happySpecReduce_3  11 happyReduction_36
-happyReduction_36 (HappyAbsSyn11  happy_var_3)
-	_
-	(HappyTerminal (TokenVarName _ happy_var_1))
-	 =  HappyAbsSyn11
-		 (happy_var_1:happy_var_3
-	)
-happyReduction_36 _ _ _  = notHappyAtAll 
-
-happyReduce_37 = happySpecReduce_1  12 happyReduction_37
-happyReduction_37 (HappyAbsSyn8  happy_var_1)
-	 =  HappyAbsSyn12
-		 ([happy_var_1]
-	)
-happyReduction_37 _  = notHappyAtAll 
-
-happyReduce_38 = happySpecReduce_3  12 happyReduction_38
-happyReduction_38 (HappyAbsSyn12  happy_var_3)
-	_
-	(HappyAbsSyn8  happy_var_1)
-	 =  HappyAbsSyn12
-		 (happy_var_1:happy_var_3
-	)
-happyReduction_38 _ _ _  = notHappyAtAll 
-
-happyReduce_39 = happySpecReduce_1  13 happyReduction_39
-happyReduction_39 (HappyTerminal (TokenNat _ happy_var_1))
-	 =  HappyAbsSyn13
-		 ([happy_var_1]
-	)
-happyReduction_39 _  = notHappyAtAll 
-
-happyReduce_40 = happySpecReduce_3  13 happyReduction_40
-happyReduction_40 (HappyAbsSyn13  happy_var_3)
-	_
-	(HappyTerminal (TokenNat _ happy_var_1))
-	 =  HappyAbsSyn13
-		 (happy_var_1:happy_var_3
-	)
-happyReduction_40 _ _ _  = notHappyAtAll 
-
-happyNewToken action sts stk [] =
-	action 51 51 notHappyAtAll (HappyState action) sts stk []
-
-happyNewToken action sts stk (tk:tks) =
-	let cont i = action i i tk (HappyState action) sts stk tks in
-	case tk of {
-	TokenFilter _ -> cont 14;
-	TokenInSet _ -> cont 15;
-	TokenOutSet _ -> cont 16;
-	TokenSetName _ happy_dollar_dollar -> cont 17;
-	TokenNat _ happy_dollar_dollar -> cont 18;
-	TokenPosNat _ happy_dollar_dollar -> cont 19;
-	TokenVarName _ happy_dollar_dollar -> cont 20;
-	TokenTrue _ -> cont 21;
-	TokenFalse _ -> cont 22;
-	TokenString _ happy_dollar_dollar -> cont 23;
-	TokenLeftSqBracket _ -> cont 24;
-	TokenLeftBrace _ -> cont 25;
-	TokenRightBrace _ -> cont 26;
-	TokenRightSqBracket _ -> cont 27;
-	TokenArrow _ -> cont 28;
-	TokenisEqual _ -> cont 29;
-	TokenisNotEqual _ -> cont 30;
-	TokenLeftBracket _ -> cont 31;
-	TokenRightBracket _ -> cont 32;
-	TokenSemiCol _ -> cont 33;
-	TokenCol _ -> cont 34;
-	TokenLambda _ -> cont 35;
-	TokenComma _ -> cont 36;
-	TokenFullStop _ -> cont 37;
-	TokenPlus _ -> cont 38;
-	TokenXProduct _ -> cont 39;
-	TokenMap _ -> cont 40;
-	TokenXXProduct _ -> cont 41;
-	TokenContains _ -> cont 42;
-	TokenIsEmpty _ -> cont 43;
-	TokenLet _ -> cont 44;
-	TokenIf _ -> cont 45;
-	TokenElse _ -> cont 46;
-	TokenThen _ -> cont 47;
-	TokenEqual _ -> cont 48;
-	TokenBoolAND _ -> cont 49;
-	TokenBoolOR _ -> cont 50;
-	_ -> happyError' ((tk:tks), [])
-	}
-
-happyError_ explist 51 tk tks = happyError' (tks, explist)
-happyError_ explist _ tk tks = happyError' ((tk:tks), explist)
-
-newtype HappyIdentity a = HappyIdentity a
-happyIdentity = HappyIdentity
-happyRunIdentity (HappyIdentity a) = a
-
-instance Prelude.Functor HappyIdentity where
-    fmap f (HappyIdentity a) = HappyIdentity (f a)
-
-instance Applicative HappyIdentity where
-    pure  = HappyIdentity
-    (<*>) = ap
-instance Prelude.Monad HappyIdentity where
-    return = pure
-    (HappyIdentity p) >>= q = q p
-
-happyThen :: () => HappyIdentity a -> (a -> HappyIdentity b) -> HappyIdentity b
-happyThen = (Prelude.>>=)
-happyReturn :: () => a -> HappyIdentity a
-happyReturn = (Prelude.return)
-happyThen1 m k tks = (Prelude.>>=) m (\a -> k a tks)
-happyReturn1 :: () => a -> b -> HappyIdentity a
-happyReturn1 = \a tks -> (Prelude.return) a
-happyError' :: () => ([(Token)], [Prelude.String]) -> HappyIdentity a
-happyError' = HappyIdentity Prelude.. (\(tokens, _) -> parseError tokens)
-parseSource tks = happyRunIdentity happySomeParser where
- happySomeParser = happyThen (happyParse action_0 tks) (\x -> case x of {HappyAbsSyn4 z -> happyReturn z; _other -> notHappyAtAll })
-
-happySeq = happyDontSeq
-
-
-parseError :: [Token] -> a
-parseError tokens = error $ "Parse error: " ++ (show.pos.head) tokens
-
-tokenPosn :: Token -> String
-tokenPosn t = let (AlexPn _ line col) = pos t in (show line) ++ ':' : (show col)
-{-# LINE 1 "templates/GenericTemplate.hs" #-}
--- $Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp $
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-data Happy_IntList = HappyCons Prelude.Int Happy_IntList
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-infixr 9 `HappyStk`
-data HappyStk a = HappyStk a (HappyStk a)
-
------------------------------------------------------------------------------
--- starting the parse
-
-happyParse start_state = happyNewToken start_state notHappyAtAll notHappyAtAll
-
------------------------------------------------------------------------------
--- Accepting the parse
-
--- If the current token is ERROR_TOK, it means we've just accepted a partial
--- parse (a %partial parser).  We must ignore the saved token on the top of
--- the stack in this case.
-happyAccept (1) tk st sts (_ `HappyStk` ans `HappyStk` _) =
-        happyReturn1 ans
-happyAccept j tk st sts (HappyStk ans _) = 
-         (happyReturn1 ans)
-
------------------------------------------------------------------------------
--- Arrays only: do the next action
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-indexShortOffAddr arr off = arr Happy_Data_Array.! off
-
-
-{-# INLINE happyLt #-}
-happyLt x y = (x Prelude.< y)
-
-
-
-
-
-
-readArrayBit arr bit =
-    Bits.testBit (indexShortOffAddr arr (bit `Prelude.div` 16)) (bit `Prelude.mod` 16)
-
-
-
-
-
-
------------------------------------------------------------------------------
--- HappyState data type (not arrays)
-
-
-
-newtype HappyState b c = HappyState
-        (Prelude.Int ->                    -- token number
-         Prelude.Int ->                    -- token number (yes, again)
-         b ->                           -- token semantic value
-         HappyState b c ->              -- current state
-         [HappyState b c] ->            -- state stack
-         c)
-
-
-
------------------------------------------------------------------------------
--- Shifting a token
-
-happyShift new_state (1) tk st sts stk@(x `HappyStk` _) =
-     let i = (case x of { HappyErrorToken (i) -> i }) in
---     trace "shifting the error token" $
-     new_state i i tk (HappyState (new_state)) ((st):(sts)) (stk)
-
-happyShift new_state i tk st sts stk =
-     happyNewToken new_state ((st):(sts)) ((HappyTerminal (tk))`HappyStk`stk)
-
--- happyReduce is specialised for the common cases.
-
-happySpecReduce_0 i fn (1) tk st sts stk
-     = happyFail [] (1) tk st sts stk
-happySpecReduce_0 nt fn j tk st@((HappyState (action))) sts stk
-     = action nt j tk st ((st):(sts)) (fn `HappyStk` stk)
-
-happySpecReduce_1 i fn (1) tk st sts stk
-     = happyFail [] (1) tk st sts stk
-happySpecReduce_1 nt fn j tk _ sts@(((st@(HappyState (action))):(_))) (v1`HappyStk`stk')
-     = let r = fn v1 in
-       happySeq r (action nt j tk st sts (r `HappyStk` stk'))
-
-happySpecReduce_2 i fn (1) tk st sts stk
-     = happyFail [] (1) tk st sts stk
-happySpecReduce_2 nt fn j tk _ ((_):(sts@(((st@(HappyState (action))):(_))))) (v1`HappyStk`v2`HappyStk`stk')
-     = let r = fn v1 v2 in
-       happySeq r (action nt j tk st sts (r `HappyStk` stk'))
-
-happySpecReduce_3 i fn (1) tk st sts stk
-     = happyFail [] (1) tk st sts stk
-happySpecReduce_3 nt fn j tk _ ((_):(((_):(sts@(((st@(HappyState (action))):(_))))))) (v1`HappyStk`v2`HappyStk`v3`HappyStk`stk')
-     = let r = fn v1 v2 v3 in
-       happySeq r (action nt j tk st sts (r `HappyStk` stk'))
-
-happyReduce k i fn (1) tk st sts stk
-     = happyFail [] (1) tk st sts stk
-happyReduce k nt fn j tk st sts stk
-     = case happyDrop (k Prelude.- ((1) :: Prelude.Int)) sts of
-         sts1@(((st1@(HappyState (action))):(_))) ->
-                let r = fn stk in  -- it doesn't hurt to always seq here...
-                happyDoSeq r (action nt j tk st1 sts1 r)
-
-happyMonadReduce k nt fn (1) tk st sts stk
-     = happyFail [] (1) tk st sts stk
-happyMonadReduce k nt fn j tk st sts stk =
-      case happyDrop k ((st):(sts)) of
-        sts1@(((st1@(HappyState (action))):(_))) ->
-          let drop_stk = happyDropStk k stk in
-          happyThen1 (fn stk tk) (\r -> action nt j tk st1 sts1 (r `HappyStk` drop_stk))
-
-happyMonad2Reduce k nt fn (1) tk st sts stk
-     = happyFail [] (1) tk st sts stk
-happyMonad2Reduce k nt fn j tk st sts stk =
-      case happyDrop k ((st):(sts)) of
-        sts1@(((st1@(HappyState (action))):(_))) ->
-         let drop_stk = happyDropStk k stk
-
-
-
-
-
-             _ = nt :: Prelude.Int
-             new_state = action
-
-          in
-          happyThen1 (fn stk tk) (\r -> happyNewToken new_state sts1 (r `HappyStk` drop_stk))
-
-happyDrop (0) l = l
-happyDrop n ((_):(t)) = happyDrop (n Prelude.- ((1) :: Prelude.Int)) t
-
-happyDropStk (0) l = l
-happyDropStk n (x `HappyStk` xs) = happyDropStk (n Prelude.- ((1)::Prelude.Int)) xs
-
------------------------------------------------------------------------------
--- Moving to a new state after a reduction
-
-
-
-
-
-
-
-
-
-happyGoto action j tk st = action j j tk (HappyState action)
-
-
------------------------------------------------------------------------------
--- Error recovery (ERROR_TOK is the error token)
-
--- parse error if we are in recovery and we fail again
-happyFail explist (1) tk old_st _ stk@(x `HappyStk` _) =
-     let i = (case x of { HappyErrorToken (i) -> i }) in
---      trace "failing" $ 
-        happyError_ explist i tk
-
-{-  We don't need state discarding for our restricted implementation of
-    "error".  In fact, it can cause some bogus parses, so I've disabled it
-    for now --SDM
-
--- discard a state
-happyFail  ERROR_TOK tk old_st CONS(HAPPYSTATE(action),sts) 
-                                                (saved_tok `HappyStk` _ `HappyStk` stk) =
---      trace ("discarding state, depth " ++ show (length stk))  $
-        DO_ACTION(action,ERROR_TOK,tk,sts,(saved_tok`HappyStk`stk))
--}
-
--- Enter error recovery: generate an error token,
---                       save the old token and carry on.
-happyFail explist i tk (HappyState (action)) sts stk =
---      trace "entering error recovery" $
-        action (1) (1) tk (HappyState (action)) sts ((HappyErrorToken (i)) `HappyStk` stk)
-
--- Internal happy errors:
-
-notHappyAtAll :: a
-notHappyAtAll = Prelude.error "Internal Happy error\n"
-
------------------------------------------------------------------------------
--- Hack to get the typechecker to accept our action functions
-
-
-
-
-
-
-
------------------------------------------------------------------------------
--- Seq-ing.  If the --strict flag is given, then Happy emits 
---      happySeq = happyDoSeq
--- otherwise it emits
---      happySeq = happyDontSeq
-
-happyDoSeq, happyDontSeq :: a -> b -> b
-happyDoSeq   a b = a `Prelude.seq` b
-happyDontSeq a b = b
-
------------------------------------------------------------------------------
--- Don't inline any functions from the template.  GHC has a nasty habit
--- of deciding to inline happyGoto everywhere, which increases the size of
--- the generated parser quite a bit.
-
-
-
-
-
-
-
-
-
-{-# NOINLINE happyShift #-}
-{-# NOINLINE happySpecReduce_0 #-}
-{-# NOINLINE happySpecReduce_1 #-}
-{-# NOINLINE happySpecReduce_2 #-}
-{-# NOINLINE happySpecReduce_3 #-}
-{-# NOINLINE happyReduce #-}
-{-# NOINLINE happyMonadReduce #-}
-{-# NOINLINE happyGoto #-}
-{-# NOINLINE happyFail #-}
-
--- end of Happy Template.
diff --git a/Q.csv b/Q.csv
deleted file mode 100644
index e3281094c0264d8786678c0faa5f7cff334dd6f8..0000000000000000000000000000000000000000
--- a/Q.csv
+++ /dev/null
@@ -1,4 +0,0 @@
-1 ,6 ,4 ,7
-2 ,8 ,5 ,3
-2 , , ,1
-4 , ,2 ,3
\ No newline at end of file
diff --git a/R.csv b/R.csv
deleted file mode 100644
index 5f2c21269165f15da2188e526c4461a0317518f9..0000000000000000000000000000000000000000
--- a/R.csv
+++ /dev/null
@@ -1,4 +0,0 @@
-1 ,5 ,4 ,0
-2 , 0,2 ,0
-3 ,7 ,1 ,2
-4 ,8 , 0,0
\ No newline at end of file
diff --git a/S.csv b/S.csv
deleted file mode 100644
index b3697e56f2298286b201563d547e42babce6ef7c..0000000000000000000000000000000000000000
--- a/S.csv
+++ /dev/null
@@ -1,4 +0,0 @@
-1 ,6 ,4 ,7
-2 ,8 ,5 ,3
-2 ,0,0,1
-4 ,0,2 ,3
\ No newline at end of file
diff --git a/SampleSet.csv b/SampleSet.csv
deleted file mode 100644
index f912eeba142cff35ae3a045abe37418111daa8fd..0000000000000000000000000000000000000000
--- a/SampleSet.csv
+++ /dev/null
@@ -1,5 +0,0 @@
-  hello  ,tree
-big ,apple
-hello,world
-he,good
-hello,good bye
diff --git a/sampleprogram.txt b/sampleprogram.txt
deleted file mode 100644
index 6e4db43ce75394cfcfea7a333c0e74911ea91083..0000000000000000000000000000000000000000
--- a/sampleprogram.txt
+++ /dev/null
@@ -1,6 +0,0 @@
-.in
-SampleSet:4
-
-.out
-let f = \(r) -> r[1] == "hello";
-filter[SampleSet](f);
\ No newline at end of file
diff --git a/solutions/pr1.cql b/solutions/pr1.cql
deleted file mode 100644
index f9bfb751ab7fe0abaacc7b74c0c67cd81b33533a..0000000000000000000000000000000000000000
--- a/solutions/pr1.cql
+++ /dev/null
@@ -1,6 +0,0 @@
-.in
-A:2, # declare input files and their numbers of cols in .in section
-B:2
-
-.out # statements for the query are in .out section
-A x B; # returns the cartesian product of the two sets (conjunction)
\ No newline at end of file
diff --git a/solutions/pr2.cql b/solutions/pr2.cql
deleted file mode 100644
index 7411d3213e48552103ca4e9a2e5b7cda555ae982..0000000000000000000000000000000000000000
--- a/solutions/pr2.cql
+++ /dev/null
@@ -1,6 +0,0 @@
-.in
-A:3
-
-.out
-filter( \(r) -> r[1] == r[2]);
-map (\(r) -> r[3,1]);
\ No newline at end of file
diff --git a/solutions/pr3.cql b/solutions/pr3.cql
deleted file mode 100644
index 5dc784d5397ce53d453b08192bebe247592cdfa1..0000000000000000000000000000000000000000
--- a/solutions/pr3.cql
+++ /dev/null
@@ -1,9 +0,0 @@
-.in
-P: 4,
-Q: 4
-
-.out
-P x Q;
-filter(\(r) -> r[1] == r[5]);
-let f = \(a,y) -> if (isEmpty(a)) then y else a;
-map (\(r) -> [r[1], f(r[2], r[6]), f(r[3], r[7]), f(r[4], r[8])]);
\ No newline at end of file
diff --git a/solutions/pr4.cql b/solutions/pr4.cql
deleted file mode 100644
index d8425281c1a50055894782a4635d172cf2c5f008..0000000000000000000000000000000000000000
--- a/solutions/pr4.cql
+++ /dev/null
@@ -1,5 +0,0 @@
-.in
-P42 :2
-
-.out
-filter (\(r) -> not(isEmpty(r[2]) ) );
\ No newline at end of file
diff --git a/solutions/pr5.cql b/solutions/pr5.cql
deleted file mode 100644
index f34636ec2f22bd74a8f39567878a1dec46232c78..0000000000000000000000000000000000000000
--- a/solutions/pr5.cql
+++ /dev/null
@@ -1,5 +0,0 @@
-.in
-A:1
-
-.out
-map{A}(\(r) -> [r[1],"0",r[1]] );
\ No newline at end of file