packages feed

ihaskell 0.2.0.1 → 0.2.0.2

raw patch · 24 files changed

+713/−30720 lines, 24 filesdep +ghc-parserdep +tardep +unixdep ~classy-preludedep ~splitsetup-changedbinary-added

Dependencies added: ghc-parser, tar, unix

Dependency ranges changed: classy-prelude, split

Files

− HaskellParser.y.pp
@@ -1,2188 +0,0 @@---                                                              -*-haskell-*---- ------------------------------------------------------------------------------ (c) The University of Glasgow 1997-2003------- The GHC grammar.------ Author(s): Simon Marlow, Sven Panne 1997, 1998, 1999--- -----------------------------------------------------------------------------{-{-# LANGUAGE BangPatterns #-} -- required for versions of Happy before 1.18.6-{-# LANGUAGE ImplicitPrelude #-}-{-# OPTIONS -Wwarn -w #-}--- The above warning supression flag is a temporary kludge.--- While working on this module you are encouraged to remove it and fix--- any warnings in the module. See---     http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings--- for details--{-# OPTIONS_GHC -O0 -fno-ignore-interface-pragmas #-}-{--Careful optimisation of the parser: we don't want to throw everything-at it, because that takes too long and doesn't buy much, but we do want-to inline certain key external functions, so we instruct GHC not to-throw away inlinings as it would normally do in -O0 mode.--}--module IHaskell.GHC.HaskellParser (fullExpression, fullModule, partialTypeSignature, partialStatement, partialExpression, partialImport, partialDeclaration) where--import HsSyn-import RdrHsSyn-import HscTypes         ( IsBootInterface, WarningTxt(..) )-import Lexer-import RdrName-import TcEvidence       ( emptyTcEvBinds )-import TysPrim          ( liftedTypeKindTyConName, eqPrimTyCon )-import TysWiredIn       ( unitTyCon, unitDataCon, tupleTyCon, tupleCon, nilDataCon,-                          unboxedUnitTyCon, unboxedUnitDataCon,-                          listTyCon_RDR, parrTyCon_RDR, consDataCon_RDR, eqTyCon_RDR )-import Type             ( funTyCon )-import ForeignCall-import OccName          ( varName, dataName, tcClsName, tvName )-import DataCon          ( DataCon, dataConName )-import SrcLoc-import Module-import StaticFlags      ( opt_SccProfilingOn, opt_Hpc )-import Kind             ( Kind, liftedTypeKind, unliftedTypeKind, mkArrowKind )-import Class            ( FunDep )-import BasicTypes-import DynFlags-import OrdList-import HaddockUtils--import FastString-import Maybes           ( orElse )-import Outputable--import Control.Monad    ( unless, liftM )-import GHC.Exts-import Data.Char-import Control.Monad    ( mplus )-}--{--------------------------------------------------------------------------------24 Februar 2006--Conflicts: 33 shift/reduce-           1 reduce/reduce--The reduce/reduce conflict is weird.  It's between tyconsym and consym, and I-would think the two should never occur in the same context.--  -=chak--------------------------------------------------------------------------------31 December 2006--Conflicts: 34 shift/reduce-           1 reduce/reduce--The reduce/reduce conflict is weird.  It's between tyconsym and consym, and I-would think the two should never occur in the same context.--  -=chak--------------------------------------------------------------------------------6 December 2006--Conflicts: 32 shift/reduce-           1 reduce/reduce--The reduce/reduce conflict is weird.  It's between tyconsym and consym, and I-would think the two should never occur in the same context.--  -=chak--------------------------------------------------------------------------------26 July 2006--Conflicts: 37 shift/reduce-           1 reduce/reduce--The reduce/reduce conflict is weird.  It's between tyconsym and consym, and I-would think the two should never occur in the same context.--  -=chak--------------------------------------------------------------------------------Conflicts: 38 shift/reduce (1.25)--10 for abiguity in 'if x then y else z + 1'             [State 178]-        (shift parses as 'if x then y else (z + 1)', as per longest-parse rule)-        10 because op might be: : - ! * . `x` VARSYM CONSYM QVARSYM QCONSYM--1 for ambiguity in 'if x then y else z :: T'            [State 178]-        (shift parses as 'if x then y else (z :: T)', as per longest-parse rule)--4 for ambiguity in 'if x then y else z -< e'            [State 178]-        (shift parses as 'if x then y else (z -< T)', as per longest-parse rule)-        There are four such operators: -<, >-, -<<, >>----2 for ambiguity in 'case v of { x :: T -> T ... } '     [States 11, 253]-        Which of these two is intended?-          case v of-            (x::T) -> T         -- Rhs is T-    or-          case v of-            (x::T -> T) -> ..   -- Rhs is ...--10 for ambiguity in 'e :: a `b` c'.  Does this mean     [States 11, 253]-        (e::a) `b` c, or -        (e :: (a `b` c))-    As well as `b` we can have !, VARSYM, QCONSYM, and CONSYM, hence 5 cases-    Same duplication between states 11 and 253 as the previous case--1 for ambiguity in 'let ?x ...'                         [State 329]-        the parser can't tell whether the ?x is the lhs of a normal binding or-        an implicit binding.  Fortunately resolving as shift gives it the only-        sensible meaning, namely the lhs of an implicit binding.--1 for ambiguity in '{-# RULES "name" [ ... #-}          [State 382]-        we don't know whether the '[' starts the activation or not: it-        might be the start of the declaration with the activation being-        empty.  --SDM 1/4/2002--1 for ambiguity in '{-# RULES "name" forall = ... #-}'  [State 474]-        since 'forall' is a valid variable name, we don't know whether-        to treat a forall on the input as the beginning of a quantifier-        or the beginning of the rule itself.  Resolving to shift means-        it's always treated as a quantifier, hence the above is disallowed.-        This saves explicitly defining a grammar for the rule lhs that-        doesn't include 'forall'.--1 for ambiguity when the source file starts with "-- | doc". We need another-  token of lookahead to determine if a top declaration or the 'module' keyword-  follows. Shift parses as if the 'module' keyword follows.   ---- ------------------------------------------------------------------------------ Adding location info--This is done in a stylised way using the three macros below, L0, L1-and LL.  Each of these macros can be thought of as having type--   L0, L1, LL :: a -> Located a--They each add a SrcSpan to their argument.--   L0   adds 'noSrcSpan', used for empty productions-     -- This doesn't seem to work anymore -=chak--   L1   for a production with a single token on the lhs.  Grabs the SrcSpan-        from that token.--   LL   for a production with >1 token on the lhs.  Makes up a SrcSpan from-        the first and last tokens.--These suffice for the majority of cases.  However, we must be-especially careful with empty productions: LL won't work if the first-or last token on the lhs can represent an empty span.  In these cases,-we have to calculate the span using more of the tokens from the lhs, eg.--        | 'newtype' tycl_hdr '=' newconstr deriving-                { L (comb3 $1 $4 $5)-                    (mkTyData NewType (unLoc $2) [$4] (unLoc $5)) }--We provide comb3 and comb4 functions which are useful in such cases.--Be careful: there's no checking that you actually got this right, the-only symptom will be that the SrcSpans of your syntax will be-incorrect.--/*- * We must expand these macros *before* running Happy, which is why this file is- * Parser.y.pp rather than just Parser.y - we run the C pre-processor first.- */-#define L0   L noSrcSpan-#define L1   sL (getLoc $1)-#define LL   sL (comb2 $1 $>)---- --------------------------------------------------------------------------------}--%token- '_'            { L _ ITunderscore }            -- Haskell keywords- 'as'           { L _ ITas }- 'case'         { L _ ITcase }          - 'class'        { L _ ITclass } - 'data'         { L _ ITdata } - 'default'      { L _ ITdefault }- 'deriving'     { L _ ITderiving }- 'do'           { L _ ITdo }- 'else'         { L _ ITelse }- 'hiding'       { L _ IThiding }- 'if'           { L _ ITif }- 'import'       { L _ ITimport }- 'in'           { L _ ITin }- 'infix'        { L _ ITinfix }- 'infixl'       { L _ ITinfixl }- 'infixr'       { L _ ITinfixr }- 'instance'     { L _ ITinstance }- 'let'          { L _ ITlet }- 'module'       { L _ ITmodule }- 'newtype'      { L _ ITnewtype }- 'of'           { L _ ITof }- 'qualified'    { L _ ITqualified }- 'then'         { L _ ITthen }- 'type'         { L _ ITtype }- 'where'        { L _ ITwhere }- '_scc_'        { L _ ITscc }         -- ToDo: remove-- 'forall'       { L _ ITforall }                -- GHC extension keywords- 'foreign'      { L _ ITforeign }- 'export'       { L _ ITexport }- 'label'        { L _ ITlabel } - 'dynamic'      { L _ ITdynamic }- 'safe'         { L _ ITsafe }- 'interruptible' { L _ ITinterruptible }- 'unsafe'       { L _ ITunsafe }- 'mdo'          { L _ ITmdo }- 'family'       { L _ ITfamily }- 'stdcall'      { L _ ITstdcallconv }- 'ccall'        { L _ ITccallconv }- 'capi'         { L _ ITcapiconv }- 'prim'         { L _ ITprimcallconv }- 'proc'         { L _ ITproc }          -- for arrow notation extension- 'rec'          { L _ ITrec }           -- for arrow notation extension- 'group'    { L _ ITgroup }     -- for list transform extension- 'by'       { L _ ITby }        -- for list transform extension- 'using'    { L _ ITusing }     -- for list transform extension-- '{-# INLINE'             { L _ (ITinline_prag _ _) }- '{-# SPECIALISE'         { L _ ITspec_prag }- '{-# SPECIALISE_INLINE'  { L _ (ITspec_inline_prag _) }- '{-# SOURCE'                                   { L _ ITsource_prag }- '{-# RULES'                                    { L _ ITrules_prag }- '{-# CORE'                                     { L _ ITcore_prag }              -- hdaume: annotated core- '{-# SCC'                { L _ ITscc_prag }- '{-# GENERATED'          { L _ ITgenerated_prag }- '{-# DEPRECATED'         { L _ ITdeprecated_prag }- '{-# WARNING'            { L _ ITwarning_prag }- '{-# UNPACK'             { L _ ITunpack_prag }- '{-# NOUNPACK'           { L _ ITnounpack_prag }- '{-# ANN'                { L _ ITann_prag }- '{-# VECTORISE'          { L _ ITvect_prag }- '{-# VECTORISE_SCALAR'   { L _ ITvect_scalar_prag }- '{-# NOVECTORISE'        { L _ ITnovect_prag }- '{-# CTYPE'              { L _ ITctype }- '#-}'                                          { L _ ITclose_prag }-- '..'           { L _ ITdotdot }                        -- reserved symbols- ':'            { L _ ITcolon }- '::'           { L _ ITdcolon }- '='            { L _ ITequal }- '\\'           { L _ ITlam }- 'lcase'        { L _ ITlcase }- '|'            { L _ ITvbar }- '<-'           { L _ ITlarrow }- '->'           { L _ ITrarrow }- '@'            { L _ ITat }- '~'            { L _ ITtilde }- '~#'           { L _ ITtildehsh }- '=>'           { L _ ITdarrow }- '-'            { L _ ITminus }- '!'            { L _ ITbang }- '*'            { L _ ITstar }- '-<'           { L _ ITlarrowtail }            -- for arrow notation- '>-'           { L _ ITrarrowtail }            -- for arrow notation- '-<<'          { L _ ITLarrowtail }            -- for arrow notation- '>>-'          { L _ ITRarrowtail }            -- for arrow notation- '.'            { L _ ITdot }-- '{'            { L _ ITocurly }                        -- special symbols- '}'            { L _ ITccurly }- vocurly        { L _ ITvocurly } -- virtual open curly (from layout)- vccurly        { L _ ITvccurly } -- virtual close curly (from layout)- '['            { L _ ITobrack }- ']'            { L _ ITcbrack }- '[:'           { L _ ITopabrack }- ':]'           { L _ ITcpabrack }- '('            { L _ IToparen }- ')'            { L _ ITcparen }- '(#'           { L _ IToubxparen }- '#)'           { L _ ITcubxparen }- '(|'           { L _ IToparenbar }- '|)'           { L _ ITcparenbar }- ';'            { L _ ITsemi }- ','            { L _ ITcomma }- '`'            { L _ ITbackquote }- SIMPLEQUOTE    { L _ ITsimpleQuote      }     -- 'x-- VARID          { L _ (ITvarid    _) }          -- identifiers- CONID          { L _ (ITconid    _) }- VARSYM         { L _ (ITvarsym   _) }- CONSYM         { L _ (ITconsym   _) }- QVARID         { L _ (ITqvarid   _) }- QCONID         { L _ (ITqconid   _) }- QVARSYM        { L _ (ITqvarsym  _) }- QCONSYM        { L _ (ITqconsym  _) }- PREFIXQVARSYM  { L _ (ITprefixqvarsym  _) }- PREFIXQCONSYM  { L _ (ITprefixqconsym  _) }-- IPDUPVARID     { L _ (ITdupipvarid   _) }              -- GHC extension-- CHAR           { L _ (ITchar     _) }- STRING         { L _ (ITstring   _) }- INTEGER        { L _ (ITinteger  _) }- RATIONAL       { L _ (ITrational _) }-                    - PRIMCHAR       { L _ (ITprimchar   _) }- PRIMSTRING     { L _ (ITprimstring _) }- PRIMINTEGER    { L _ (ITprimint    _) }- PRIMWORD       { L _ (ITprimword  _) }- PRIMFLOAT      { L _ (ITprimfloat  _) }- PRIMDOUBLE     { L _ (ITprimdouble _) }-- DOCNEXT        { L _ (ITdocCommentNext _) }- DOCPREV        { L _ (ITdocCommentPrev _) }- DOCNAMED       { L _ (ITdocCommentNamed _) }- DOCSECTION     { L _ (ITdocSection _ _) }---- Template Haskell -'[|'            { L _ ITopenExpQuote  }       -'[p|'           { L _ ITopenPatQuote  }      -'[t|'           { L _ ITopenTypQuote  }      -'[d|'           { L _ ITopenDecQuote  }      -'|]'            { L _ ITcloseQuote    }-TH_ID_SPLICE    { L _ (ITidEscape _)  }     -- $x-'$('            { L _ ITparenEscape   }     -- $( exp )-TH_TY_QUOTE     { L _ ITtyQuote       }      -- ''T-TH_QUASIQUOTE   { L _ (ITquasiQuote _) }-TH_QQUASIQUOTE  { L _ (ITqQuasiQuote _) }--%monad { P } { >>= } { return }-%lexer { lexer } { L _ ITeof }-%name parseModule module-%name parseStmt   maybe_stmt-%name parseIdentifier  identifier-%name parseType ctype-%partial parseHeader header-%tokentype { (Located Token) }----- Partial parsers for IHaskell-%partial partialStatement stmt-%partial partialImport importdecl-%partial partialDeclaration topdecl-%partial partialExpression exp-%partial partialTypeSignature signature-%name fullModule namedModule-%name fullExpression exp-%%--signature :: { LHsDecl RdrName }-          : sigdecl { head (fromOL (unLoc $1)) }--namedModule  :: { Located (HsModule RdrName) }-        : maybedocheader 'module' modid maybemodwarning maybeexports 'where' body-                {% fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule (Just $3) $5 (fst $7) (snd $7) $4 $1-                          ) )}--{--fundecl :: { OrdList (LHsDecl RdrName) }-        : sigdecl ';' funcs     { unLoc $1 `appOL` $3 }-        | funcs                 { $1 }--funcs :: { OrdList (LHsDecl RdrName) }-      : func ';' funcs        { unLoc $1 `appOL` $3 }-      | func                  { unLoc $1 }--func :: { Located (OrdList (LHsDecl RdrName)) }-func : fexp opt_sig rhs  {% do { r <- checkValDef $1 $2 $3;-                                 let { l = comb2 $1 $> };-                                 return $! (sL l (unitOL $! (sL l $ ValD r))) } }--}--------------------------------------------------------------------------------- Identifiers; one of the entry points-identifier :: { Located RdrName }-        : qvar                          { $1 }-        | qcon                          { $1 }-        | qvarop                        { $1 }-        | qconop                        { $1 }-    | '(' '->' ')'      { LL $ getRdrName funTyCon }---------------------------------------------------------------------------------- Module Header---- The place for module deprecation is really too restrictive, but if it--- was allowed at its natural place just before 'module', we get an ugly--- s/r conflict with the second alternative. Another solution would be the--- introduction of a new pragma DEPRECATED_MODULE, but this is not very nice,--- either, and DEPRECATED is only expected to be used by people who really--- know what they are doing. :-)--module  :: { Located (HsModule RdrName) }-        : maybedocheader 'module' modid maybemodwarning maybeexports 'where' body-                {% fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule (Just $3) $5 (fst $7) (snd $7) $4 $1-                          ) )}-        | body2-                {% fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule Nothing Nothing-                          (fst $1) (snd $1) Nothing Nothing-                          )) }--maybedocheader :: { Maybe LHsDocString }-        : moduleheader            { $1 }-        | {- empty -}             { Nothing }--missing_module_keyword :: { () }-        : {- empty -}                           {% pushCurrentContext }--maybemodwarning :: { Maybe WarningTxt }-    : '{-# DEPRECATED' strings '#-}' { Just (DeprecatedTxt $ unLoc $2) }-    | '{-# WARNING' strings '#-}'    { Just (WarningTxt $ unLoc $2) }-    |  {- empty -}                  { Nothing }--body    :: { ([LImportDecl RdrName], [LHsDecl RdrName]) }-        :  '{'            top '}'               { $2 }-        |      vocurly    top close             { $2 }--body2   :: { ([LImportDecl RdrName], [LHsDecl RdrName]) }-        :  '{' top '}'                          { $2 }-        |  missing_module_keyword top close     { $2 }--top     :: { ([LImportDecl RdrName], [LHsDecl RdrName]) }-        : importdecls                           { (reverse $1,[]) }-        | importdecls ';' cvtopdecls            { (reverse $1,$3) }-        | cvtopdecls                            { ([],$1) }--cvtopdecls :: { [LHsDecl RdrName] }-        : topdecls                              { cvTopDecls $1 }---------------------------------------------------------------------------------- Module declaration & imports only--header  :: { Located (HsModule RdrName) }-        : maybedocheader 'module' modid maybemodwarning maybeexports 'where' header_body-                {% fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule (Just $3) $5 $7 [] $4 $1-                          ))}-        | header_body2-                {% fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule Nothing Nothing $1 [] Nothing-                          Nothing)) }--header_body :: { [LImportDecl RdrName] }-        :  '{'            importdecls           { $2 }-        |      vocurly    importdecls           { $2 }--header_body2 :: { [LImportDecl RdrName] }-        :  '{' importdecls                      { $2 }-        |  missing_module_keyword importdecls   { $2 }---------------------------------------------------------------------------------- The Export List--maybeexports :: { Maybe [LIE RdrName] }-        :  '(' exportlist ')'                   { Just $2 }-        |  {- empty -}                          { Nothing }--exportlist :: { [LIE RdrName] }-        : expdoclist ',' expdoclist             { $1 ++ $3 }-        | exportlist1                           { $1 }--exportlist1 :: { [LIE RdrName] }-        : expdoclist export expdoclist ',' exportlist  { $1 ++ ($2 : $3) ++ $5 }-        | expdoclist export expdoclist                 { $1 ++ ($2 : $3) }-        | expdoclist                                   { $1 }--expdoclist :: { [LIE RdrName] }-        : exp_doc expdoclist                           { $1 : $2 }-        | {- empty -}                                  { [] }--exp_doc :: { LIE RdrName }                                                   -        : docsection    { L1 (case (unLoc $1) of (n, doc) -> IEGroup n doc) }-        | docnamed      { L1 (IEDocNamed ((fst . unLoc) $1)) } -        | docnext       { L1 (IEDoc (unLoc $1)) }       ---   -- No longer allow things like [] and (,,,) to be exported-   -- They are built in syntax, always available-export  :: { LIE RdrName }-        : qcname_ext export_subspec     { LL (mkModuleImpExp (unLoc $1)-                                                             (unLoc $2)) }-        |  'module' modid               { LL (IEModuleContents (unLoc $2)) }--export_subspec :: { Located ImpExpSubSpec }-        : {- empty -}                   { L0 ImpExpAbs }-        | '(' '..' ')'                  { LL ImpExpAll }-        | '(' ')'                       { LL (ImpExpList []) }-        | '(' qcnames ')'               { LL (ImpExpList (reverse $2)) }--qcnames :: { [RdrName] }     -- A reversed list-        :  qcnames ',' qcname_ext       { unLoc $3 : $1 }-        |  qcname_ext                   { [unLoc $1]  }--qcname_ext :: { Located RdrName }       -- Variable or data constructor-                                        -- or tagged type constructor-        :  qcname                       { $1 }-        |  'type' qcname                {% mkTypeImpExp (LL (unLoc $2)) }---- Cannot pull into qcname_ext, as qcname is also used in expression.-qcname  :: { Located RdrName }  -- Variable or data constructor-        :  qvar                         { $1 }-        |  qcon                         { $1 }---------------------------------------------------------------------------------- Import Declarations---- import decls can be *empty*, or even just a string of semicolons--- whereas topdecls must contain at least one topdecl.--importdecls :: { [LImportDecl RdrName] }-        : importdecls ';' importdecl            { $3 : $1 }-        | importdecls ';'                       { $1 }-        | importdecl                            { [ $1 ] }-        | {- empty -}                           { [] }--importdecl :: { LImportDecl RdrName }-        : 'import' maybe_src maybe_safe optqualified maybe_pkg modid maybeas maybeimpspec -                { L (comb4 $1 $6 $7 $8) $-                  ImportDecl { ideclName = $6, ideclPkgQual = $5-                             , ideclSource = $2, ideclSafe = $3-                             , ideclQualified = $4, ideclImplicit = False-                             , ideclAs = unLoc $7, ideclHiding = unLoc $8 } }--maybe_src :: { IsBootInterface }-        : '{-# SOURCE' '#-}'                    { True }-        | {- empty -}                           { False }--maybe_safe :: { Bool }-        : 'safe'                                { True }-        | {- empty -}                           { False }--maybe_pkg :: { Maybe FastString }-        : STRING                                { Just (getSTRING $1) }-        | {- empty -}                           { Nothing }--optqualified :: { Bool }-        : 'qualified'                           { True  }-        | {- empty -}                           { False }--maybeas :: { Located (Maybe ModuleName) }-        : 'as' modid                            { LL (Just (unLoc $2)) }-        | {- empty -}                           { noLoc Nothing }--maybeimpspec :: { Located (Maybe (Bool, [LIE RdrName])) }-        : impspec                               { L1 (Just (unLoc $1)) }-        | {- empty -}                           { noLoc Nothing }--impspec :: { Located (Bool, [LIE RdrName]) }-        :  '(' exportlist ')'                   { LL (False, $2) }-        |  'hiding' '(' exportlist ')'          { LL (True,  $3) }---------------------------------------------------------------------------------- Fixity Declarations--prec    :: { Int }-        : {- empty -}           { 9 }-        | INTEGER               {% checkPrecP (L1 (fromInteger (getINTEGER $1))) }--infix   :: { Located FixityDirection }-        : 'infix'                               { L1 InfixN  }-        | 'infixl'                              { L1 InfixL  }-        | 'infixr'                              { L1 InfixR }--ops     :: { Located [Located RdrName] }-        : ops ',' op                            { LL ($3 : unLoc $1) }-        | op                                    { L1 [$1] }---------------------------------------------------------------------------------- Top-Level Declarations--topdecls :: { OrdList (LHsDecl RdrName) }-        : topdecls ';' topdecl                  { $1 `appOL` $3 }-        | topdecls ';'                          { $1 }-        | topdecl                               { $1 }--topdecl :: { OrdList (LHsDecl RdrName) }-        : cl_decl                               { unitOL (L1 (TyClD (unLoc $1))) }-        | ty_decl                               { unitOL (L1 (TyClD (unLoc $1))) }-        | inst_decl                             { unitOL (L1 (InstD (unLoc $1))) }-        | stand_alone_deriving                  { unitOL (LL (DerivD (unLoc $1))) }-        | 'default' '(' comma_types0 ')'        { unitOL (LL $ DefD (DefaultDecl $3)) }-        | 'foreign' fdecl                       { unitOL (LL (unLoc $2)) }-        | '{-# DEPRECATED' deprecations '#-}'   { $2 }-        | '{-# WARNING' warnings '#-}'          { $2 }-        | '{-# RULES' rules '#-}'               { $2 }-        | '{-# VECTORISE_SCALAR' qvar '#-}'     { unitOL $ LL $ VectD (HsVect       $2 Nothing) }-        | '{-# VECTORISE' qvar '=' exp '#-}'    { unitOL $ LL $ VectD (HsVect       $2 (Just $4)) }-        | '{-# NOVECTORISE' qvar '#-}'          { unitOL $ LL $ VectD (HsNoVect     $2) }-        | '{-# VECTORISE' 'type' gtycon '#-}'     -                                                { unitOL $ LL $ -                                                    VectD (HsVectTypeIn False $3 Nothing) }-        | '{-# VECTORISE_SCALAR' 'type' gtycon '#-}'     -                                                { unitOL $ LL $ -                                                    VectD (HsVectTypeIn True $3 Nothing) }-        | '{-# VECTORISE' 'type' gtycon '=' gtycon '#-}'     -                                                { unitOL $ LL $ -                                                    VectD (HsVectTypeIn False $3 (Just $5)) }-        | '{-# VECTORISE_SCALAR' 'type' gtycon '=' gtycon '#-}'     -                                                { unitOL $ LL $ -                                                    VectD (HsVectTypeIn True $3 (Just $5)) }-        | '{-# VECTORISE' 'class' gtycon '#-}'  { unitOL $ LL $ VectD (HsVectClassIn $3) }-        | '{-# VECTORISE_SCALAR' 'instance' type '#-}'     -                                                { unitOL $ LL $ VectD (HsVectInstIn $3) }-        | annotation { unitOL $1 }-        | decl                                  { unLoc $1 }--        -- Template Haskell Extension-        -- The $(..) form is one possible form of infixexp-        -- but we treat an arbitrary expression just as if -        -- it had a $(..) wrapped around it-        -- | infixexp                              { unitOL (LL $ mkTopSpliceDecl $1) } ---- Type classes----cl_decl :: { LTyClDecl RdrName }-        : 'class' tycl_hdr fds where_cls        {% mkClassDecl (comb4 $1 $2 $3 $4) $2 $3 $4 }---- Type declarations (toplevel)----ty_decl :: { LTyClDecl RdrName }-           -- ordinary type synonyms-        : 'type' type '=' ctypedoc-                -- Note ctype, not sigtype, on the right of '='-                -- We allow an explicit for-all but we don't insert one-                -- in   type Foo a = (b,b)-                -- Instead we just say b is out of scope-                ---                -- Note the use of type for the head; this allows-                -- infix type constructors to be declared -                {% mkTySynonym (comb2 $1 $4) $2 $4 }--           -- type family declarations-        | 'type' 'family' type opt_kind_sig -                -- Note the use of type for the head; this allows-                -- infix type constructors to be declared-                {% mkTyFamily (comb3 $1 $3 $4) TypeFamily $3 (unLoc $4) }--          -- ordinary data type or newtype declaration-        | data_or_newtype capi_ctype tycl_hdr constrs deriving-                {% mkTyData (comb4 $1 $3 $4 $5) (unLoc $1) $2 $3 -                            Nothing (reverse (unLoc $4)) (unLoc $5) }-                                   -- We need the location on tycl_hdr in case -                                   -- constrs and deriving are both empty--          -- ordinary GADT declaration-        | data_or_newtype capi_ctype tycl_hdr opt_kind_sig -                 gadt_constrlist-                 deriving-                {% mkTyData (comb4 $1 $3 $5 $6) (unLoc $1) $2 $3 -                            (unLoc $4) (unLoc $5) (unLoc $6) }-                                   -- We need the location on tycl_hdr in case -                                   -- constrs and deriving are both empty--          -- data/newtype family-        | 'data' 'family' type opt_kind_sig-                {% mkTyFamily (comb3 $1 $2 $4) DataFamily $3 (unLoc $4) }--inst_decl :: { LInstDecl RdrName }-        : 'instance' inst_type where_inst-                 { let (binds, sigs, _, ats, _) = cvBindsAndSigs (unLoc $3)-                   in L (comb3 $1 $2 $3) (ClsInstD { cid_poly_ty = $2, cid_binds = binds-                                                   , cid_sigs = sigs, cid_fam_insts = ats }) }--           -- type instance declarations-        | 'type' 'instance' type '=' ctype-                -- Note the use of type for the head; this allows-                -- infix type constructors and type patterns-                {% do { L loc d <- mkFamInstSynonym (comb2 $1 $5) $3 $5-                      ; return (L loc (FamInstD { lid_inst = d })) } }--          -- data/newtype instance declaration-        | data_or_newtype 'instance' tycl_hdr constrs deriving-                {% do { L loc d <- mkFamInstData (comb4 $1 $3 $4 $5) (unLoc $1) Nothing $3-                                      Nothing (reverse (unLoc $4)) (unLoc $5)-                      ; return (L loc (FamInstD { lid_inst = d })) } }--          -- GADT instance declaration-        | data_or_newtype 'instance' tycl_hdr opt_kind_sig -                 gadt_constrlist-                 deriving-                {% do { L loc d <- mkFamInstData (comb4 $1 $3 $5 $6) (unLoc $1) Nothing $3-                                            (unLoc $4) (unLoc $5) (unLoc $6)-                      ; return (L loc (FamInstD { lid_inst = d })) } }-        --- Associated type family declarations------ * They have a different syntax than on the toplevel (no family special---   identifier).------ * They also need to be separate from instances; otherwise, data family---   declarations without a kind signature cause parsing conflicts with empty---   data declarations. ----at_decl_cls :: { LHsDecl RdrName }-           -- family declarations-        : 'type' type opt_kind_sig-                -- Note the use of type for the head; this allows-                -- infix type constructors to be declared.-                {% do { L loc decl <- mkTyFamily (comb3 $1 $2 $3) TypeFamily $2 (unLoc $3)-                      ; return (L loc (TyClD decl)) } }--        | 'data' type opt_kind_sig-                {% do { L loc decl <- mkTyFamily (comb3 $1 $2 $3) DataFamily $2 (unLoc $3)-                      ; return (L loc (TyClD decl)) } }--           -- default type instance-        | 'type' type '=' ctype-                -- Note the use of type for the head; this allows-                -- infix type constructors and type patterns-                {% do { L loc fid <- mkFamInstSynonym (comb2 $1 $4) $2 $4-                      ; return (L loc (InstD (FamInstD { lid_inst = fid }))) } }---- Associated type instances----at_decl_inst :: { LFamInstDecl RdrName }-           -- type instance declarations-        : 'type' type '=' ctype-                -- Note the use of type for the head; this allows-                -- infix type constructors and type patterns-                {% mkFamInstSynonym (comb2 $1 $4) $2 $4 }--        -- data/newtype instance declaration-        | data_or_newtype capi_ctype tycl_hdr constrs deriving-                {% mkFamInstData (comb4 $1 $3 $4 $5) (unLoc $1) $2 $3 -                                 Nothing (reverse (unLoc $4)) (unLoc $5) }--        -- GADT instance declaration-        | data_or_newtype capi_ctype tycl_hdr opt_kind_sig -                 gadt_constrlist-                 deriving-                {% mkFamInstData (comb4 $1 $3 $5 $6) (unLoc $1) $2 $3 -                                 (unLoc $4) (unLoc $5) (unLoc $6) }--data_or_newtype :: { Located NewOrData }-        : 'data'        { L1 DataType }-        | 'newtype'     { L1 NewType }--opt_kind_sig :: { Located (Maybe (LHsKind RdrName)) }-        :                               { noLoc Nothing }-        | '::' kind                     { LL (Just $2) }---- tycl_hdr parses the header of a class or data type decl,--- which takes the form---      T a b---      Eq a => T a---      (Eq a, Ord b) => T a b---      T Int [a]                       -- for associated types--- Rather a lot of inlining here, else we get reduce/reduce errors-tycl_hdr :: { Located (Maybe (LHsContext RdrName), LHsType RdrName) }-        : context '=>' type             { LL (Just $1, $3) }-        | type                          { L1 (Nothing, $1) }--capi_ctype :: { Maybe CType }-capi_ctype : '{-# CTYPE' STRING STRING '#-}' { Just (CType (Just (Header (getSTRING $2))) (getSTRING $3)) }-           | '{-# CTYPE'        STRING '#-}' { Just (CType Nothing                        (getSTRING $2)) }-           |                                 { Nothing }---------------------------------------------------------------------------------- Stand-alone deriving---- Glasgow extension: stand-alone deriving declarations-stand_alone_deriving :: { LDerivDecl RdrName }-        : 'deriving' 'instance' inst_type { LL (DerivDecl $3) }---------------------------------------------------------------------------------- Nested declarations---- Declaration in class bodies----decl_cls  :: { Located (OrdList (LHsDecl RdrName)) }-decl_cls  : at_decl_cls                 { LL (unitOL $1) }-          | decl                        { $1 }--          -- A 'default' signature used with the generic-programming extension-          | 'default' infixexp '::' sigtypedoc-                    {% do { (TypeSig l ty) <- checkValSig $2 $4-                          ; return (LL $ unitOL (LL $ SigD (GenericSig l ty))) } }--decls_cls :: { Located (OrdList (LHsDecl RdrName)) }    -- Reversed-          : decls_cls ';' decl_cls      { LL (unLoc $1 `appOL` unLoc $3) }-          | decls_cls ';'               { LL (unLoc $1) }-          | decl_cls                    { $1 }-          | {- empty -}                 { noLoc nilOL }---decllist_cls-        :: { Located (OrdList (LHsDecl RdrName)) }      -- Reversed-        : '{'         decls_cls '}'     { LL (unLoc $2) }-        |     vocurly decls_cls close   { $2 }---- Class body----where_cls :: { Located (OrdList (LHsDecl RdrName)) }    -- Reversed-                                -- No implicit parameters-                                -- May have type declarations-        : 'where' decllist_cls          { LL (unLoc $2) }-        | {- empty -}                   { noLoc nilOL }---- Declarations in instance bodies----decl_inst  :: { Located (OrdList (LHsDecl RdrName)) }-decl_inst  : at_decl_inst               { LL (unitOL (L1 (InstD (FamInstD { lid_inst = unLoc $1 })))) }-           | decl                       { $1 }--decls_inst :: { Located (OrdList (LHsDecl RdrName)) }   -- Reversed-           : decls_inst ';' decl_inst   { LL (unLoc $1 `appOL` unLoc $3) }-           | decls_inst ';'             { LL (unLoc $1) }-           | decl_inst                  { $1 }-           | {- empty -}                { noLoc nilOL }--decllist_inst -        :: { Located (OrdList (LHsDecl RdrName)) }      -- Reversed-        : '{'         decls_inst '}'    { LL (unLoc $2) }-        |     vocurly decls_inst close  { $2 }---- Instance body----where_inst :: { Located (OrdList (LHsDecl RdrName)) }   -- Reversed-                                -- No implicit parameters-                                -- May have type declarations-        : 'where' decllist_inst         { LL (unLoc $2) }-        | {- empty -}                   { noLoc nilOL }---- Declarations in binding groups other than classes and instances----decls   :: { Located (OrdList (LHsDecl RdrName)) }      -        : decls ';' decl                { let { this = unLoc $3;-                                    rest = unLoc $1;-                                    these = rest `appOL` this }-                              in rest `seq` this `seq` these `seq`-                                    LL these }-        | decls ';'                     { LL (unLoc $1) }-        | decl                          { $1 }-        | {- empty -}                   { noLoc nilOL }--decllist :: { Located (OrdList (LHsDecl RdrName)) }-        : '{'            decls '}'      { LL (unLoc $2) }-        |     vocurly    decls close    { $2 }---- Binding groups other than those of class and instance declarations----binds   ::  { Located (HsLocalBinds RdrName) }          -- May have implicit parameters-                                                -- No type declarations-        : decllist                      { L1 (HsValBinds (cvBindGroup (unLoc $1))) }-        | '{'            dbinds '}'     { LL (HsIPBinds (IPBinds (unLoc $2) emptyTcEvBinds)) }-        |     vocurly    dbinds close   { L (getLoc $2) (HsIPBinds (IPBinds (unLoc $2) emptyTcEvBinds)) }--wherebinds :: { Located (HsLocalBinds RdrName) }        -- May have implicit parameters-                                                -- No type declarations-        : 'where' binds                 { LL (unLoc $2) }-        | {- empty -}                   { noLoc emptyLocalBinds }----------------------------------------------------------------------------------- Transformation Rules--rules   :: { OrdList (LHsDecl RdrName) }-        :  rules ';' rule                       { $1 `snocOL` $3 }-        |  rules ';'                            { $1 }-        |  rule                                 { unitOL $1 }-        |  {- empty -}                          { nilOL }--rule    :: { LHsDecl RdrName }-        : STRING activation rule_forall infixexp '=' exp-             { LL $ RuleD (HsRule (getSTRING $1) -                                  ($2 `orElse` AlwaysActive) -                                  $3 $4 placeHolderNames $6 placeHolderNames) }--activation :: { Maybe Activation } -        : {- empty -}                           { Nothing }-        | explicit_activation                   { Just $1 }--explicit_activation :: { Activation }  -- In brackets-        : '[' INTEGER ']'               { ActiveAfter  (fromInteger (getINTEGER $2)) }-        | '[' '~' INTEGER ']'           { ActiveBefore (fromInteger (getINTEGER $3)) }--rule_forall :: { [RuleBndr RdrName] }-        : 'forall' rule_var_list '.'            { $2 }-        | {- empty -}                           { [] }--rule_var_list :: { [RuleBndr RdrName] }-        : rule_var                              { [$1] }-        | rule_var rule_var_list                { $1 : $2 }--rule_var :: { RuleBndr RdrName }-        : varid                                 { RuleBndr $1 }-        | '(' varid '::' ctype ')'              { RuleBndrSig $2 (mkHsWithBndrs $4) }---------------------------------------------------------------------------------- Warnings and deprecations (c.f. rules)--warnings :: { OrdList (LHsDecl RdrName) }-        : warnings ';' warning          { $1 `appOL` $3 }-        | warnings ';'                  { $1 }-        | warning                               { $1 }-        | {- empty -}                           { nilOL }---- SUP: TEMPORARY HACK, not checking for `module Foo'-warning :: { OrdList (LHsDecl RdrName) }-        : namelist strings-                { toOL [ LL $ WarningD (Warning n (WarningTxt $ unLoc $2))-                       | n <- unLoc $1 ] }--deprecations :: { OrdList (LHsDecl RdrName) }-        : deprecations ';' deprecation          { $1 `appOL` $3 }-        | deprecations ';'                      { $1 }-        | deprecation                           { $1 }-        | {- empty -}                           { nilOL }---- SUP: TEMPORARY HACK, not checking for `module Foo'-deprecation :: { OrdList (LHsDecl RdrName) }-        : namelist strings-                { toOL [ LL $ WarningD (Warning n (DeprecatedTxt $ unLoc $2))-                       | n <- unLoc $1 ] }--strings :: { Located [FastString] }-    : STRING { L1 [getSTRING $1] }-    | '[' stringlist ']' { LL $ fromOL (unLoc $2) }--stringlist :: { Located (OrdList FastString) }-    : stringlist ',' STRING { LL (unLoc $1 `snocOL` getSTRING $3) }-    | STRING                { LL (unitOL (getSTRING $1)) }---------------------------------------------------------------------------------- Annotations-annotation :: { LHsDecl RdrName }-    : '{-# ANN' name_var aexp '#-}'      { LL (AnnD $ HsAnnotation (ValueAnnProvenance (unLoc $2)) $3) }-    | '{-# ANN' 'type' tycon aexp '#-}'  { LL (AnnD $ HsAnnotation (TypeAnnProvenance (unLoc $3)) $4) }-    | '{-# ANN' 'module' aexp '#-}'      { LL (AnnD $ HsAnnotation ModuleAnnProvenance $3) }----------------------------------------------------------------------------------- Foreign import and export declarations--fdecl :: { LHsDecl RdrName }-fdecl : 'import' callconv safety fspec-                {% mkImport $2 $3 (unLoc $4) >>= return.LL }-      | 'import' callconv        fspec          -                {% do { d <- mkImport $2 PlaySafe (unLoc $3);-                        return (LL d) } }-      | 'export' callconv fspec-                {% mkExport $2 (unLoc $3) >>= return.LL }--callconv :: { CCallConv }-          : 'stdcall'                   { StdCallConv }-          | 'ccall'                     { CCallConv   }-          | 'capi'                      { CApiConv    }-          | 'prim'                      { PrimCallConv}--safety :: { Safety }-        : 'unsafe'                      { PlayRisky }-        | 'safe'                        { PlaySafe }-        | 'interruptible'               { PlayInterruptible }--fspec :: { Located (Located FastString, Located RdrName, LHsType RdrName) }-       : STRING var '::' sigtypedoc     { LL (L (getLoc $1) (getSTRING $1), $2, $4) }-       |        var '::' sigtypedoc     { LL (noLoc nilFS, $1, $3) }-         -- if the entity string is missing, it defaults to the empty string;-         -- the meaning of an empty entity string depends on the calling-         -- convention---------------------------------------------------------------------------------- Type signatures--opt_sig :: { Maybe (LHsType RdrName) }-        : {- empty -}                   { Nothing }-        | '::' sigtype                  { Just $2 }--opt_asig :: { Maybe (LHsType RdrName) }-        : {- empty -}                   { Nothing }-        | '::' atype                    { Just $2 }--sigtype :: { LHsType RdrName }          -- Always a HsForAllTy,-                                        -- to tell the renamer where to generalise-        : ctype                         { L1 (mkImplicitHsForAllTy (noLoc []) $1) }-        -- Wrap an Implicit forall if there isn't one there already--sigtypedoc :: { LHsType RdrName }       -- Always a HsForAllTy-        : ctypedoc                      { L1 (mkImplicitHsForAllTy (noLoc []) $1) }-        -- Wrap an Implicit forall if there isn't one there already--sig_vars :: { Located [Located RdrName] }-         : sig_vars ',' var             { LL ($3 : unLoc $1) }-         | var                          { L1 [$1] }--sigtypes1 :: { [LHsType RdrName] }      -- Always HsForAllTys-        : sigtype                       { [ $1 ] }-        | sigtype ',' sigtypes1         { $1 : $3 }---------------------------------------------------------------------------------- Types--infixtype :: { LHsType RdrName }-        : btype qtyconop type         { LL $ mkHsOpTy $1 $2 $3 }-        | btype tyvarop  type    { LL $ mkHsOpTy $1 $2 $3 }--strict_mark :: { Located HsBang }-        : '!'                           { L1 HsStrict }-        | '{-# UNPACK' '#-}' '!'        { LL HsUnpack }-        | '{-# NOUNPACK' '#-}' '!'      { LL HsNoUnpack }---- A ctype is a for-all type-ctype   :: { LHsType RdrName }-        : 'forall' tv_bndrs '.' ctype   { LL $ mkExplicitHsForAllTy $2 (noLoc []) $4 }-        | context '=>' ctype            { LL $ mkImplicitHsForAllTy   $1 $3 }-        -- A type of form (context => type) is an *implicit* HsForAllTy-        | ipvar '::' type               { LL (HsIParamTy (unLoc $1) $3) }-        | type                          { $1 }--------------------------- Notes for 'ctypedoc'--- It would have been nice to simplify the grammar by unifying `ctype` and --- ctypedoc` into one production, allowing comments on types everywhere (and--- rejecting them after parsing, where necessary).  This is however not possible--- since it leads to ambiguity. The reason is the support for comments on record--- fields: ---         data R = R { field :: Int -- ^ comment on the field }--- If we allow comments on types here, it's not clear if the comment applies--- to 'field' or to 'Int'. So we must use `ctype` to describe the type.--ctypedoc :: { LHsType RdrName }-        : 'forall' tv_bndrs '.' ctypedoc        { LL $ mkExplicitHsForAllTy $2 (noLoc []) $4 }-        | context '=>' ctypedoc         { LL $ mkImplicitHsForAllTy   $1 $3 }-        -- A type of form (context => type) is an *implicit* HsForAllTy-        | ipvar '::' type               { LL (HsIParamTy (unLoc $1) $3) }-        | typedoc                       { $1 }--------------------------- Notes for 'context'--- We parse a context as a btype so that we don't get reduce/reduce--- errors in ctype.  The basic problem is that---      (Eq a, Ord a)--- looks so much like a tuple type.  We can't tell until we find the =>---- We have the t1 ~ t2 form both in 'context' and in type, --- to permit an individual equational constraint without parenthesis.--- Thus for some reason we allow    f :: a~b => blah--- but not                          f :: ?x::Int => blah-context :: { LHsContext RdrName }-        : btype '~'      btype          {% checkContext-                                             (LL $ HsEqTy $1 $3) }-        | btype                         {% checkContext $1 }--type :: { LHsType RdrName }-        : btype                         { $1 }-        | btype qtyconop type           { LL $ mkHsOpTy $1 $2 $3 }-        | btype tyvarop  type           { LL $ mkHsOpTy $1 $2 $3 }-        | btype '->'     ctype          { LL $ HsFunTy $1 $3 }-        | btype '~'      btype          { LL $ HsEqTy $1 $3 }-                                        -- see Note [Promotion]-        | btype SIMPLEQUOTE qconop type     { LL $ mkHsOpTy $1 $3 $4 }-        | btype SIMPLEQUOTE varop  type     { LL $ mkHsOpTy $1 $3 $4 }--typedoc :: { LHsType RdrName }-        : btype                          { $1 }-        | btype docprev                  { LL $ HsDocTy $1 $2 }-        | btype qtyconop type            { LL $ mkHsOpTy $1 $2 $3 }-        | btype qtyconop type docprev    { LL $ HsDocTy (L (comb3 $1 $2 $3) (mkHsOpTy $1 $2 $3)) $4 }-        | btype tyvarop  type            { LL $ mkHsOpTy $1 $2 $3 }-        | btype tyvarop  type docprev    { LL $ HsDocTy (L (comb3 $1 $2 $3) (mkHsOpTy $1 $2 $3)) $4 }-        | btype '->'     ctypedoc        { LL $ HsFunTy $1 $3 }-        | btype docprev '->' ctypedoc    { LL $ HsFunTy (L (comb2 $1 $2) (HsDocTy $1 $2)) $4 }-        | btype '~'      btype           { LL $ HsEqTy $1 $3 }-                                        -- see Note [Promotion]-        | btype SIMPLEQUOTE qconop type     { LL $ mkHsOpTy $1 $3 $4 }-        | btype SIMPLEQUOTE varop  type     { LL $ mkHsOpTy $1 $3 $4 }--btype :: { LHsType RdrName }-        : btype atype                   { LL $ HsAppTy $1 $2 }-        | atype                         { $1 }--atype :: { LHsType RdrName }-        : ntgtycon                       { L1 (HsTyVar (unLoc $1)) }      -- Not including unit tuples-        | tyvar                          { L1 (HsTyVar (unLoc $1)) }      -- (See Note [Unit tuples])-        | strict_mark atype              { LL (HsBangTy (unLoc $1) $2) }  -- Constructor sigs only-        | '{' fielddecls '}'             {% checkRecordSyntax (LL $ HsRecTy $2) } -- Constructor sigs only-        | '(' ')'                        { LL $ HsTupleTy HsBoxedOrConstraintTuple []      }-        | '(' ctype ',' comma_types1 ')' { LL $ HsTupleTy HsBoxedOrConstraintTuple ($2:$4) }-        | '(#' '#)'                      { LL $ HsTupleTy HsUnboxedTuple           []      }       -        | '(#' comma_types1 '#)'         { LL $ HsTupleTy HsUnboxedTuple           $2      }-        | '[' ctype ']'                  { LL $ HsListTy  $2 }-        | '[:' ctype ':]'                { LL $ HsPArrTy  $2 }-        | '(' ctype ')'                  { LL $ HsParTy   $2 }-        | '(' ctype '::' kind ')'        { LL $ HsKindSig $2 $4 }-        | quasiquote                     { L1 (HsQuasiQuoteTy (unLoc $1)) }-        | '$(' exp ')'                   { LL $ mkHsSpliceTy $2 }-        | TH_ID_SPLICE                   { LL $ mkHsSpliceTy $ L1 $ HsVar $-                                           mkUnqual varName (getTH_ID_SPLICE $1) }-                                                      -- see Note [Promotion] for the followings-        | SIMPLEQUOTE qconid                          { LL $ HsTyVar $ unLoc $2 }-        | SIMPLEQUOTE  '(' ')'                        { LL $ HsTyVar $ getRdrName unitDataCon }-        | SIMPLEQUOTE  '(' ctype ',' comma_types1 ')' { LL $ HsExplicitTupleTy [] ($3 : $5) }-        | SIMPLEQUOTE  '[' comma_types0 ']'           { LL $ HsExplicitListTy placeHolderKind $3 }-        | '[' ctype ',' comma_types1 ']'              { LL $ HsExplicitListTy placeHolderKind ($2 : $4) }-        | INTEGER            {% mkTyLit $ LL $ HsNumTy $ getINTEGER $1 }-        | STRING             {% mkTyLit $ LL $ HsStrTy $ getSTRING  $1 }---- An inst_type is what occurs in the head of an instance decl---      e.g.  (Foo a, Gaz b) => Wibble a b--- It's kept as a single type, with a MonoDictTy at the right--- hand corner, for convenience.-inst_type :: { LHsType RdrName }-        : sigtype                       { $1 }--inst_types1 :: { [LHsType RdrName] }-        : inst_type                     { [$1] }-        | inst_type ',' inst_types1     { $1 : $3 }--comma_types0  :: { [LHsType RdrName] }-        : comma_types1                  { $1 }-        | {- empty -}                   { [] }--comma_types1    :: { [LHsType RdrName] }-        : ctype                         { [$1] }-        | ctype  ',' comma_types1       { $1 : $3 }--tv_bndrs :: { [LHsTyVarBndr RdrName] }-         : tv_bndr tv_bndrs             { $1 : $2 }-         | {- empty -}                  { [] }--tv_bndr :: { LHsTyVarBndr RdrName }-        : tyvar                         { L1 (UserTyVar (unLoc $1)) }-        | '(' tyvar '::' kind ')'       { LL (KindedTyVar (unLoc $2) $4) }--fds :: { Located [Located (FunDep RdrName)] }-        : {- empty -}                   { noLoc [] }-        | '|' fds1                      { LL (reverse (unLoc $2)) }--fds1 :: { Located [Located (FunDep RdrName)] }-        : fds1 ',' fd                   { LL ($3 : unLoc $1) }-        | fd                            { L1 [$1] }--fd :: { Located (FunDep RdrName) }-        : varids0 '->' varids0          { L (comb3 $1 $2 $3)-                                           (reverse (unLoc $1), reverse (unLoc $3)) }--varids0 :: { Located [RdrName] }-        : {- empty -}                   { noLoc [] }-        | varids0 tyvar                 { LL (unLoc $2 : unLoc $1) }---------------------------------------------------------------------------------- Kinds--kind :: { LHsKind RdrName }-        : bkind                  { $1 }-        | bkind '->' kind        { LL $ HsFunTy $1 $3 }--bkind :: { LHsKind RdrName }-        : akind                  { $1 }-        | bkind akind            { LL $ HsAppTy $1 $2 }--akind :: { LHsKind RdrName }-        : '*'                    { L1 $ HsTyVar (nameRdrName liftedTypeKindTyConName) }-        | '(' kind ')'           { LL $ HsParTy $2 }-        | pkind                  { $1 }-        | tyvar                  { L1 $ HsTyVar (unLoc $1) }--pkind :: { LHsKind RdrName }  -- promoted type, see Note [Promotion]-        : qtycon                          { L1 $ HsTyVar $ unLoc $1 }-        | '(' ')'                         { LL $ HsTyVar $ getRdrName unitTyCon }-        | '(' kind ',' comma_kinds1 ')'   { LL $ HsTupleTy HsBoxedTuple ($2 : $4) }-        | '[' kind ']'                    { LL $ HsListTy $2 }--comma_kinds1 :: { [LHsKind RdrName] }-        : kind                          { [$1] }-        | kind  ',' comma_kinds1        { $1 : $3 }--{- Note [Promotion]-   ~~~~~~~~~~~~~~~~--- Syntax of promoted qualified names-We write 'Nat.Zero instead of Nat.'Zero when dealing with qualified-names. Moreover ticks are only allowed in types, not in kinds, for a-few reasons:-  1. we don't need quotes since we cannot define names in kinds-  2. if one day we merge types and kinds, tick would mean look in DataName-  3. we don't have a kind namespace anyway--- Syntax of explicit kind polymorphism  (IA0_TODO: not yet implemented)-Kind abstraction is implicit. We write-> data SList (s :: k -> *) (as :: [k]) where ...-because it looks like what we do in terms-> id (x :: a) = x--- Name resolution-When the user write Zero instead of 'Zero in types, we parse it a-HsTyVar ("Zero", TcClsName) instead of HsTyVar ("Zero", DataName). We-deal with this in the renamer. If a HsTyVar ("Zero", TcClsName) is not-bounded in the type level, then we look for it in the term level (we-change its namespace to DataName, see Note [Demotion] in OccName). And-both become a HsTyVar ("Zero", DataName) after the renamer.---}----------------------------------------------------------------------------------- Datatype declarations--gadt_constrlist :: { Located [LConDecl RdrName] }       -- Returned in order-        : 'where' '{'        gadt_constrs '}'      { L (comb2 $1 $3) (unLoc $3) }-        | 'where' vocurly    gadt_constrs close    { L (comb2 $1 $3) (unLoc $3) }-        | {- empty -}                              { noLoc [] }--gadt_constrs :: { Located [LConDecl RdrName] }-        : gadt_constr ';' gadt_constrs  { L (comb2 (head $1) $3) ($1 ++ unLoc $3) }-        | gadt_constr                   { L (getLoc (head $1)) $1 }-        | {- empty -}                   { noLoc [] }---- We allow the following forms:---      C :: Eq a => a -> T a---      C :: forall a. Eq a => !a -> T a---      D { x,y :: a } :: T a---      forall a. Eq a => D { x,y :: a } :: T a--gadt_constr :: { [LConDecl RdrName] }   -- Returns a list because of:   C,D :: ty-        : con_list '::' sigtype-                { map (sL (comb2 $1 $3)) (mkGadtDecl (unLoc $1) $3) } --                -- Deprecated syntax for GADT record declarations-        | oqtycon '{' fielddecls '}' '::' sigtype-                {% do { cd <- mkDeprecatedGadtRecordDecl (comb2 $1 $6) $1 $3 $6-                      ; cd' <- checkRecordSyntax cd-                      ; return [cd'] } }--constrs :: { Located [LConDecl RdrName] }-        : maybe_docnext '=' constrs1    { L (comb2 $2 $3) (addConDocs (unLoc $3) $1) }--constrs1 :: { Located [LConDecl RdrName] }-        : constrs1 maybe_docnext '|' maybe_docprev constr { LL (addConDoc $5 $2 : addConDocFirst (unLoc $1) $4) }-        | constr                                          { L1 [$1] }--constr :: { LConDecl RdrName }-        : maybe_docnext forall context '=>' constr_stuff maybe_docprev  -                { let (con,details) = unLoc $5 in -                  addConDoc (L (comb4 $2 $3 $4 $5) (mkSimpleConDecl con (unLoc $2) $3 details))-                            ($1 `mplus` $6) }-        | maybe_docnext forall constr_stuff maybe_docprev-                { let (con,details) = unLoc $3 in -                  addConDoc (L (comb2 $2 $3) (mkSimpleConDecl con (unLoc $2) (noLoc []) details))-                            ($1 `mplus` $4) }--forall :: { Located [LHsTyVarBndr RdrName] }-        : 'forall' tv_bndrs '.'         { LL $2 }-        | {- empty -}                   { noLoc [] }--constr_stuff :: { Located (Located RdrName, HsConDeclDetails RdrName) }--- We parse the constructor declaration ---      C t1 t2--- as a btype (treating C as a type constructor) and then convert C to be--- a data constructor.  Reason: it might continue like this:---      C t1 t2 %: D Int--- in which case C really would be a type constructor.  We can't resolve this--- ambiguity till we come across the constructor oprerator :% (or not, more usually)-        : btype                         {% splitCon $1 >>= return.LL }-        | btype conop btype             {  LL ($2, InfixCon $1 $3) }--fielddecls :: { [ConDeclField RdrName] }-        : {- empty -}     { [] }-        | fielddecls1     { $1 }--fielddecls1 :: { [ConDeclField RdrName] }-        : fielddecl maybe_docnext ',' maybe_docprev fielddecls1-                      { [ addFieldDoc f $4 | f <- $1 ] ++ addFieldDocs $5 $2 }-                             -- This adds the doc $4 to each field separately-        | fielddecl   { $1 }--fielddecl :: { [ConDeclField RdrName] }    -- A list because of   f,g :: Int-        : maybe_docnext sig_vars '::' ctype maybe_docprev      { [ ConDeclField fld $4 ($1 `mplus` $5) -                                                                 | fld <- reverse (unLoc $2) ] }---- We allow the odd-looking 'inst_type' in a deriving clause, so that--- we can do deriving( forall a. C [a] ) in a newtype (GHC extension).--- The 'C [a]' part is converted to an HsPredTy by checkInstType--- We don't allow a context, but that's sorted out by the type checker.-deriving :: { Located (Maybe [LHsType RdrName]) }-        : {- empty -}                           { noLoc Nothing }-        | 'deriving' qtycon                     { let { L loc tv = $2 }-                                                  in LL (Just [L loc (HsTyVar tv)]) } -        | 'deriving' '(' ')'                    { LL (Just []) }-        | 'deriving' '(' inst_types1 ')'        { LL (Just $3) }-             -- Glasgow extension: allow partial -             -- applications in derivings---------------------------------------------------------------------------------- Value definitions--{- Note [Declaration/signature overlap]-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-There's an awkward overlap with a type signature.  Consider-        f :: Int -> Int = ...rhs...-   Then we can't tell whether it's a type signature or a value-   definition with a result signature until we see the '='.-   So we have to inline enough to postpone reductions until we know.--}--{--  ATTENTION: Dirty Hackery Ahead! If the second alternative of vars is var-  instead of qvar, we get another shift/reduce-conflict. Consider the-  following programs:-  -     { (^^) :: Int->Int ; }          Type signature; only var allowed--     { (^^) :: Int->Int = ... ; }    Value defn with result signature;-                                     qvar allowed (because of instance decls)-  -  We can't tell whether to reduce var to qvar until after we've read the signatures.--}--docdecl :: { LHsDecl RdrName }-        : docdecld { L1 (DocD (unLoc $1)) }--docdecld :: { LDocDecl }-        : docnext                               { L1 (DocCommentNext (unLoc $1)) }-        | docprev                               { L1 (DocCommentPrev (unLoc $1)) }-        | docnamed                              { L1 (case (unLoc $1) of (n, doc) -> DocCommentNamed n doc) }-        | docsection                            { L1 (case (unLoc $1) of (n, doc) -> DocGroup n doc) }--decl    :: { Located (OrdList (LHsDecl RdrName)) }-        : sigdecl               { $1 }--        | '!' aexp rhs          {% do { let { e = LL (SectionR (LL (HsVar bang_RDR)) $2) };-                                        pat <- checkPattern e;-                                        return $ LL $ unitOL $ LL $ ValD $-                                               PatBind pat (unLoc $3)-                                                       placeHolderType placeHolderNames (Nothing,[]) } }-                                -- Turn it all into an expression so that-                                -- checkPattern can check that bangs are enabled--        | infixexp opt_sig rhs  {% do { r <- checkValDef $1 $2 $3;-                                        let { l = comb2 $1 $> };-                                        return $! (sL l (unitOL $! (sL l $ ValD r))) } }-        | docdecl               { LL $ unitOL $1 }--rhs     :: { Located (GRHSs RdrName) }-        : '=' exp wherebinds    { sL (comb3 $1 $2 $3) $ GRHSs (unguardedRHS $2) (unLoc $3) }-        | gdrhs wherebinds      { LL $ GRHSs (reverse (unLoc $1)) (unLoc $2) }--gdrhs :: { Located [LGRHS RdrName] }-        : gdrhs gdrh            { LL ($2 : unLoc $1) }-        | gdrh                  { L1 [$1] }--gdrh :: { LGRHS RdrName }-        : '|' guardquals '=' exp        { sL (comb2 $1 $>) $ GRHS (unLoc $2) $4 }--sigdecl :: { Located (OrdList (LHsDecl RdrName)) }-        : -        -- See Note [Declaration/signature overlap] for why we need infixexp here-          infixexp '::' sigtypedoc-                        {% do s <- checkValSig $1 $3 ; return (LL $ unitOL (LL $ SigD s)) }-        | var ',' sig_vars '::' sigtypedoc-                                { LL $ toOL [ LL $ SigD (TypeSig ($1 : unLoc $3) $5) ] }-        | infix prec ops        { LL $ toOL [ LL $ SigD (FixSig (FixitySig n (Fixity $2 (unLoc $1))))-                                             | n <- unLoc $3 ] }-        | '{-# INLINE' activation qvar '#-}'        -                { LL $ unitOL (LL $ SigD (InlineSig $3 (mkInlinePragma (getINLINE $1) $2))) }-        | '{-# SPECIALISE' activation qvar '::' sigtypes1 '#-}'-                { let inl_prag = mkInlinePragma (EmptyInlineSpec, FunLike) $2-                  in LL $ toOL [ LL $ SigD (SpecSig $3 t inl_prag) -                               | t <- $5] }-        | '{-# SPECIALISE_INLINE' activation qvar '::' sigtypes1 '#-}'-                { LL $ toOL [ LL $ SigD (SpecSig $3 t (mkInlinePragma (getSPEC_INLINE $1) $2))-                            | t <- $5] }-        | '{-# SPECIALISE' 'instance' inst_type '#-}'-                { LL $ unitOL (LL $ SigD (SpecInstSig $3)) }---------------------------------------------------------------------------------- Expressions--quasiquote :: { Located (HsQuasiQuote RdrName) }-        : TH_QUASIQUOTE   { let { loc = getLoc $1-                                ; ITquasiQuote (quoter, quote, quoteSpan) = unLoc $1-                                ; quoterId = mkUnqual varName quoter }-                            in L1 (mkHsQuasiQuote quoterId (RealSrcSpan quoteSpan) quote) }-        | TH_QQUASIQUOTE  { let { loc = getLoc $1-                                ; ITqQuasiQuote (qual, quoter, quote, quoteSpan) = unLoc $1-                                ; quoterId = mkQual varName (qual, quoter) }-                            in sL (getLoc $1) (mkHsQuasiQuote quoterId (RealSrcSpan quoteSpan) quote) }--exp   :: { LHsExpr RdrName }-        : infixexp '::' sigtype         { LL $ ExprWithTySig $1 $3 }-        | infixexp '-<' exp             { LL $ HsArrApp $1 $3 placeHolderType HsFirstOrderApp True }-        | infixexp '>-' exp             { LL $ HsArrApp $3 $1 placeHolderType HsFirstOrderApp False }-        | infixexp '-<<' exp            { LL $ HsArrApp $1 $3 placeHolderType HsHigherOrderApp True }-        | infixexp '>>-' exp            { LL $ HsArrApp $3 $1 placeHolderType HsHigherOrderApp False}-        | infixexp                      { $1 }--infixexp :: { LHsExpr RdrName }-        : exp10                         { $1 }-        | infixexp qop exp10            { LL (OpApp $1 $2 (panic "fixity") $3) }--exp10 :: { LHsExpr RdrName }-        : '\\' apat apats opt_asig '->' exp     -                        { LL $ HsLam (mkMatchGroup [LL $ Match ($2:$3) $4-                                                                (unguardedGRHSs $6)-                                                            ]) }-        | 'let' binds 'in' exp                  { LL $ HsLet (unLoc $2) $4 }-        | '\\' 'lcase' altslist-            { LL $ HsLamCase placeHolderType (mkMatchGroup (unLoc $3)) }-        | 'if' exp optSemi 'then' exp optSemi 'else' exp-                                        {% checkDoAndIfThenElse $2 $3 $5 $6 $8 >>-                                           return (LL $ mkHsIf $2 $5 $8) }-        | 'if' gdpats                   {% hintMultiWayIf (getLoc $1) >>-                                           return (LL $ HsMultiIf placeHolderType (reverse $ unLoc $2)) }-        | 'case' exp 'of' altslist              { LL $ HsCase $2 (mkMatchGroup (unLoc $4)) }-        | '-' fexp                              { LL $ NegApp $2 noSyntaxExpr }--        | 'do' stmtlist                 { L (comb2 $1 $2) (mkHsDo DoExpr  (unLoc $2)) }-        | 'mdo' stmtlist                { L (comb2 $1 $2) (mkHsDo MDoExpr (unLoc $2)) }--        | scc_annot exp                         { LL $ if opt_SccProfilingOn-                                                        then HsSCC (unLoc $1) $2-                                                        else HsPar $2 }-        | hpc_annot exp                         { LL $ if opt_Hpc-                                                        then HsTickPragma (unLoc $1) $2-                                                        else HsPar $2 }--        | 'proc' aexp '->' exp  -                        {% checkPattern $2 >>= \ p -> -                           return (LL $ HsProc p (LL $ HsCmdTop $4 [] -                                                   placeHolderType undefined)) }-                                                -- TODO: is LL right here?--        | '{-# CORE' STRING '#-}' exp           { LL $ HsCoreAnn (getSTRING $2) $4 }-                                                    -- hdaume: core annotation-        | fexp                                  { $1 }--optSemi :: { Bool }-        : ';'         { True }-        | {- empty -} { False }--scc_annot :: { Located FastString }-        : '_scc_' STRING                        {% (addWarning Opt_WarnWarningsDeprecations (getLoc $1) (text "_scc_ is deprecated; use an SCC pragma instead")) >>= \_ ->-                                   ( do scc <- getSCC $2; return $ LL scc ) }-        | '{-# SCC' STRING '#-}'                {% do scc <- getSCC $2; return $ LL scc }-        | '{-# SCC' VARID  '#-}'                { LL (getVARID $2) }--hpc_annot :: { Located (FastString,(Int,Int),(Int,Int)) }-        : '{-# GENERATED' STRING INTEGER ':' INTEGER '-' INTEGER ':' INTEGER '#-}'-                                                { LL $ (getSTRING $2-                                                       ,( fromInteger $ getINTEGER $3-                                                        , fromInteger $ getINTEGER $5-                                                        )-                                                       ,( fromInteger $ getINTEGER $7-                                                        , fromInteger $ getINTEGER $9-                                                        )-                                                       )-                                                 }--fexp    :: { LHsExpr RdrName }-        : fexp aexp                             { LL $ HsApp $1 $2 }-        | aexp                                  { $1 }--aexp    :: { LHsExpr RdrName }-        : qvar '@' aexp                 { LL $ EAsPat $1 $3 }-        | '~' aexp                      { LL $ ELazyPat $2 }-        | aexp1                 { $1 }--aexp1   :: { LHsExpr RdrName }-        : aexp1 '{' fbinds '}'  {% do { r <- mkRecConstrOrUpdate $1 (comb2 $2 $4) $3-                                      ; checkRecordSyntax (LL r) }}-        | aexp2                 { $1 }--aexp2   :: { LHsExpr RdrName }-        : ipvar                         { L1 (HsIPVar $! unLoc $1) }-        | qcname                        { L1 (HsVar   $! unLoc $1) }-        | literal                       { L1 (HsLit   $! unLoc $1) }--- This will enable overloaded strings permanently.  Normally the renamer turns HsString--- into HsOverLit when -foverloaded-strings is on.---      | STRING                        { sL (getLoc $1) (HsOverLit $! mkHsIsString (getSTRING $1) placeHolderType) }-        | INTEGER                       { sL (getLoc $1) (HsOverLit $! mkHsIntegral (getINTEGER $1) placeHolderType) }-        | RATIONAL                      { sL (getLoc $1) (HsOverLit $! mkHsFractional (getRATIONAL $1) placeHolderType) }--        -- N.B.: sections get parsed by these next two productions.-        -- This allows you to write, e.g., '(+ 3, 4 -)', which isn't-        -- correct Haskell (you'd have to write '((+ 3), (4 -))')-        -- but the less cluttered version fell out of having texps.-        | '(' texp ')'                  { LL (HsPar $2) }-        | '(' tup_exprs ')'             { LL (ExplicitTuple $2 Boxed) }--        | '(#' texp '#)'                { LL (ExplicitTuple [Present $2] Unboxed) }-        | '(#' tup_exprs '#)'           { LL (ExplicitTuple $2 Unboxed) }--        | '[' list ']'                  { LL (unLoc $2) }-        | '[:' parr ':]'                { LL (unLoc $2) }-        | '_'                           { L1 EWildPat }-        -        -- Template Haskell Extension-        | TH_ID_SPLICE          { L1 $ HsSpliceE (mkHsSplice -                                        (L1 $ HsVar (mkUnqual varName -                                                        (getTH_ID_SPLICE $1)))) } -        | '$(' exp ')'          { LL $ HsSpliceE (mkHsSplice $2) }               ---        | SIMPLEQUOTE  qvar     { LL $ HsBracket (VarBr True  (unLoc $2)) }-        | SIMPLEQUOTE  qcon     { LL $ HsBracket (VarBr True  (unLoc $2)) }-        | TH_TY_QUOTE tyvar     { LL $ HsBracket (VarBr False (unLoc $2)) }-        | TH_TY_QUOTE gtycon    { LL $ HsBracket (VarBr False (unLoc $2)) }-        | '[|' exp '|]'         { LL $ HsBracket (ExpBr $2) }                       -        | '[t|' ctype '|]'      { LL $ HsBracket (TypBr $2) }                       -        | '[p|' infixexp '|]'   {% checkPattern $2 >>= \p ->-                                        return (LL $ HsBracket (PatBr p)) }-        | '[d|' cvtopbody '|]'  { LL $ HsBracket (DecBrL $2) }-        | quasiquote            { L1 (HsQuasiQuoteE (unLoc $1)) }--        -- arrow notation extension-        | '(|' aexp2 cmdargs '|)'       { LL $ HsArrForm $2 Nothing (reverse $3) }--cmdargs :: { [LHsCmdTop RdrName] }-        : cmdargs acmd                  { $2 : $1 }-        | {- empty -}                   { [] }--acmd    :: { LHsCmdTop RdrName }-        : aexp2                 { L1 $ HsCmdTop $1 [] placeHolderType undefined }--cvtopbody :: { [LHsDecl RdrName] }-        :  '{'            cvtopdecls0 '}'               { $2 }-        |      vocurly    cvtopdecls0 close             { $2 }--cvtopdecls0 :: { [LHsDecl RdrName] }-        : {- empty -}           { [] }-        | cvtopdecls            { $1 }---------------------------------------------------------------------------------- Tuple expressions---- "texp" is short for tuple expressions: --- things that can appear unparenthesized as long as they're--- inside parens or delimitted by commas-texp :: { LHsExpr RdrName }-        : exp                           { $1 }--        -- Note [Parsing sections]-        -- ~~~~~~~~~~~~~~~~~~~~~~~-        -- We include left and right sections here, which isn't-        -- technically right according to the Haskell standard.-        -- For example (3 +, True) isn't legal.-        -- However, we want to parse bang patterns like-        --      (!x, !y)-        -- and it's convenient to do so here as a section-        -- Then when converting expr to pattern we unravel it again-        -- Meanwhile, the renamer checks that real sections appear-        -- inside parens.-        | infixexp qop        { LL $ SectionL $1 $2 }-        | qopm infixexp       { LL $ SectionR $1 $2 }--       -- View patterns get parenthesized above-        | exp '->' texp   { LL $ EViewPat $1 $3 }---- Always at least one comma-tup_exprs :: { [HsTupArg RdrName] }-           : texp commas_tup_tail  { Present $1 : $2 }-           | commas tup_tail       { replicate $1 missingTupArg ++ $2 }---- Always starts with commas; always follows an expr-commas_tup_tail :: { [HsTupArg RdrName] }-commas_tup_tail : commas tup_tail  { replicate ($1-1) missingTupArg ++ $2 }---- Always follows a comma-tup_tail :: { [HsTupArg RdrName] }-          : texp commas_tup_tail        { Present $1 : $2 }-          | texp                        { [Present $1] }-          | {- empty -}                 { [missingTupArg] }---------------------------------------------------------------------------------- List expressions---- The rules below are little bit contorted to keep lexps left-recursive while--- avoiding another shift/reduce-conflict.--list :: { LHsExpr RdrName }-        : texp                  { L1 $ ExplicitList placeHolderType [$1] }-        | lexps                 { L1 $ ExplicitList placeHolderType (reverse (unLoc $1)) }-        | texp '..'             { LL $ ArithSeq noPostTcExpr (From $1) }-        | texp ',' exp '..'     { LL $ ArithSeq noPostTcExpr (FromThen $1 $3) }-        | texp '..' exp         { LL $ ArithSeq noPostTcExpr (FromTo $1 $3) }-        | texp ',' exp '..' exp { LL $ ArithSeq noPostTcExpr (FromThenTo $1 $3 $5) }-        | texp '|' flattenedpquals      -             {% checkMonadComp >>= \ ctxt ->-                return (sL (comb2 $1 $>) $ -                        mkHsComp ctxt (unLoc $3) $1) }--lexps :: { Located [LHsExpr RdrName] }-        : lexps ',' texp                { LL (((:) $! $3) $! unLoc $1) }-        | texp ',' texp                 { LL [$3,$1] }---------------------------------------------------------------------------------- List Comprehensions--flattenedpquals :: { Located [LStmt RdrName] }-    : pquals   { case (unLoc $1) of-                    [qs] -> L1 qs-                    -- We just had one thing in our "parallel" list so -                    -- we simply return that thing directly-                    -                    qss -> L1 [L1 $ ParStmt [ParStmtBlock qs undefined noSyntaxExpr | qs <- qss] -                                            noSyntaxExpr noSyntaxExpr]-                    -- We actually found some actual parallel lists so-                    -- we wrap them into as a ParStmt-                }--pquals :: { Located [[LStmt RdrName]] }-    : squals '|' pquals     { L (getLoc $2) (reverse (unLoc $1) : unLoc $3) }-    | squals                { L (getLoc $1) [reverse (unLoc $1)] }--squals :: { Located [LStmt RdrName] }   -- In reverse order, because the last -                                        -- one can "grab" the earlier ones-    : squals ',' transformqual               { LL [L (getLoc $3) ((unLoc $3) (reverse (unLoc $1)))] }-    | squals ',' qual                        { LL ($3 : unLoc $1) }-    | transformqual                          { LL [L (getLoc $1) ((unLoc $1) [])] }-    | qual                                   { L1 [$1] }---  | transformquals1 ',' '{|' pquals '|}'   { LL ($4 : unLoc $1) }---  | '{|' pquals '|}'                       { L1 [$2] }----- It is possible to enable bracketing (associating) qualifier lists--- by uncommenting the lines with {| |} above. Due to a lack of--- consensus on the syntax, this feature is not being used until we--- get user demand.--transformqual :: { Located ([LStmt RdrName] -> Stmt RdrName) }-                        -- Function is applied to a list of stmts *in order*-    : 'then' exp                           { LL $ \ss -> (mkTransformStmt    ss $2)    }-    | 'then' exp 'by' exp                  { LL $ \ss -> (mkTransformByStmt  ss $2 $4) }-    | 'then' 'group' 'using' exp           { LL $ \ss -> (mkGroupUsingStmt   ss $4)    }-    | 'then' 'group' 'by' exp 'using' exp  { LL $ \ss -> (mkGroupByUsingStmt ss $4 $6) }---- Note that 'group' is a special_id, which means that you can enable--- TransformListComp while still using Data.List.group. However, this--- introduces a shift/reduce conflict. Happy chooses to resolve the conflict--- in by choosing the "group by" variant, which is what we want.---------------------------------------------------------------------------------- Parallel array expressions---- The rules below are little bit contorted; see the list case for details.--- Note that, in contrast to lists, we only have finite arithmetic sequences.--- Moreover, we allow explicit arrays with no element (represented by the nil--- constructor in the list case).--parr :: { LHsExpr RdrName }-        :                               { noLoc (ExplicitPArr placeHolderType []) }-        | texp                          { L1 $ ExplicitPArr placeHolderType [$1] }-        | lexps                         { L1 $ ExplicitPArr placeHolderType -                                                       (reverse (unLoc $1)) }-        | texp '..' exp                 { LL $ PArrSeq noPostTcExpr (FromTo $1 $3) }-        | texp ',' exp '..' exp         { LL $ PArrSeq noPostTcExpr (FromThenTo $1 $3 $5) }-        | texp '|' flattenedpquals      { LL $ mkHsComp PArrComp (unLoc $3) $1 }---- We are reusing `lexps' and `flattenedpquals' from the list case.---------------------------------------------------------------------------------- Guards--guardquals :: { Located [LStmt RdrName] }-    : guardquals1           { L (getLoc $1) (reverse (unLoc $1)) }--guardquals1 :: { Located [LStmt RdrName] }-    : guardquals1 ',' qual  { LL ($3 : unLoc $1) }-    | qual                  { L1 [$1] }---------------------------------------------------------------------------------- Case alternatives--altslist :: { Located [LMatch RdrName] }-        : '{'            alts '}'       { LL (reverse (unLoc $2)) }-        |     vocurly    alts  close    { L (getLoc $2) (reverse (unLoc $2)) }--alts    :: { Located [LMatch RdrName] }-        : alts1                         { L1 (unLoc $1) }-        | ';' alts                      { LL (unLoc $2) }--alts1   :: { Located [LMatch RdrName] }-        : alts1 ';' alt                 { LL ($3 : unLoc $1) }-        | alts1 ';'                     { LL (unLoc $1) }-        | alt                           { L1 [$1] }--alt     :: { LMatch RdrName }-        : pat opt_sig alt_rhs           { LL (Match [$1] $2 (unLoc $3)) }--alt_rhs :: { Located (GRHSs RdrName) }-        : ralt wherebinds               { LL (GRHSs (unLoc $1) (unLoc $2)) }--ralt :: { Located [LGRHS RdrName] }-        : '->' exp                      { LL (unguardedRHS $2) }-        | gdpats                        { L1 (reverse (unLoc $1)) }--gdpats :: { Located [LGRHS RdrName] }-        : gdpats gdpat                  { LL ($2 : unLoc $1) }-        | gdpat                         { L1 [$1] }--gdpat   :: { LGRHS RdrName }-        : '|' guardquals '->' exp               { sL (comb2 $1 $>) $ GRHS (unLoc $2) $4 }---- 'pat' recognises a pattern, including one with a bang at the top---      e.g.  "!x" or "!(x,y)" or "C a b" etc--- Bangs inside are parsed as infix operator applications, so that--- we parse them right when bang-patterns are off-pat     :: { LPat RdrName }-pat     :  exp                  {% checkPattern $1 }-        | '!' aexp              {% checkPattern (LL (SectionR (L1 (HsVar bang_RDR)) $2)) }--apat   :: { LPat RdrName }      -apat    : aexp                  {% checkPattern $1 }-        | '!' aexp              {% checkPattern (LL (SectionR (L1 (HsVar bang_RDR)) $2)) }--apats  :: { [LPat RdrName] }-        : apat apats            { $1 : $2 }-        | {- empty -}           { [] }---------------------------------------------------------------------------------- Statement sequences--stmtlist :: { Located [LStmt RdrName] }-        : '{'           stmts '}'       { LL (unLoc $2) }-        |     vocurly   stmts close     { $2 }----      do { ;; s ; s ; ; s ;; }--- The last Stmt should be an expression, but that's hard to enforce--- here, because we need too much lookahead if we see do { e ; }--- So we use ExprStmts throughout, and switch the last one over--- in ParseUtils.checkDo instead-stmts :: { Located [LStmt RdrName] }-        : stmt stmts_help               { LL ($1 : unLoc $2) }-        | ';' stmts                     { LL (unLoc $2) }-        | {- empty -}                   { noLoc [] }--stmts_help :: { Located [LStmt RdrName] } -- might be empty-        : ';' stmts                     { LL (unLoc $2) }-        | {- empty -}                   { noLoc [] }---- For typing stmts at the GHCi prompt, where --- the input may consist of just comments.-maybe_stmt :: { Maybe (LStmt RdrName) }-        : stmt                          { Just $1 }-        | {- nothing -}                 { Nothing }--stmt  :: { LStmt RdrName }-        : qual                              { $1 }-        | 'rec' stmtlist                { LL $ mkRecStmt (unLoc $2) }--qual  :: { LStmt RdrName }-    : pat '<-' exp                      { LL $ mkBindStmt $1 $3 }-    | exp                                   { L1 $ mkExprStmt $1 }-    | 'let' binds                       { LL $ LetStmt (unLoc $2) }---------------------------------------------------------------------------------- Record Field Update/Construction--fbinds  :: { ([HsRecField RdrName (LHsExpr RdrName)], Bool) }-        : fbinds1                       { $1 }-        | {- empty -}                   { ([], False) }--fbinds1 :: { ([HsRecField RdrName (LHsExpr RdrName)], Bool) }-        : fbind ',' fbinds1             { case $3 of (flds, dd) -> ($1 : flds, dd) } -        | fbind                         { ([$1], False) }-        | '..'                          { ([],   True) }-  -fbind   :: { HsRecField RdrName (LHsExpr RdrName) }-        : qvar '=' texp { HsRecField $1 $3                False }-                        -- RHS is a 'texp', allowing view patterns (Trac #6038)-                        -- and, incidentaly, sections.  Eg-                        -- f (R { x = show -> s }) = ...--        | qvar          { HsRecField $1 placeHolderPunRhs True }-                        -- In the punning case, use a place-holder-                        -- The renamer fills in the final value---------------------------------------------------------------------------------- Implicit Parameter Bindings--dbinds  :: { Located [LIPBind RdrName] }-        : dbinds ';' dbind              { let { this = $3; rest = unLoc $1 }-                              in rest `seq` this `seq` LL (this : rest) }-        | dbinds ';'                    { LL (unLoc $1) }-        | dbind                         { let this = $1 in this `seq` L1 [this] }---      | {- empty -}                   { [] }--dbind   :: { LIPBind RdrName }-dbind   : ipvar '=' exp                 { LL (IPBind (Left (unLoc $1)) $3) }--ipvar   :: { Located HsIPName }-        : IPDUPVARID            { L1 (HsIPName (getIPDUPVARID $1)) }---------------------------------------------------------------------------------- Warnings and deprecations--namelist :: { Located [RdrName] }-namelist : name_var              { L1 [unLoc $1] }-         | name_var ',' namelist { LL (unLoc $1 : unLoc $3) }--name_var :: { Located RdrName }-name_var : var { $1 }-         | con { $1 }---------------------------------------------- Data constructors-qcon    :: { Located RdrName }-        : qconid                { $1 }-        | '(' qconsym ')'       { LL (unLoc $2) }-        | sysdcon               { L1 $ nameRdrName (dataConName (unLoc $1)) }--- The case of '[:' ':]' is part of the production `parr'--con     :: { Located RdrName }-        : conid                 { $1 }-        | '(' consym ')'        { LL (unLoc $2) }-        | sysdcon               { L1 $ nameRdrName (dataConName (unLoc $1)) }--con_list :: { Located [Located RdrName] }-con_list : con                  { L1 [$1] }-         | con ',' con_list     { LL ($1 : unLoc $3) }--sysdcon :: { Located DataCon }  -- Wired in data constructors-        : '(' ')'               { LL unitDataCon }-        | '(' commas ')'        { LL $ tupleCon BoxedTuple ($2 + 1) }-        | '(#' '#)'             { LL $ unboxedUnitDataCon }-        | '(#' commas '#)'      { LL $ tupleCon UnboxedTuple ($2 + 1) }-        | '[' ']'               { LL nilDataCon }--conop :: { Located RdrName }-        : consym                { $1 }  -        | '`' conid '`'         { LL (unLoc $2) }--qconop :: { Located RdrName }-        : qconsym               { $1 }-        | '`' qconid '`'        { LL (unLoc $2) }--------------------------------------------------------------------------------- Type constructors----- See Note [Unit tuples] in HsTypes for the distinction --- between gtycon and ntgtycon-gtycon :: { Located RdrName }  -- A "general" qualified tycon, including unit tuples-        : ntgtycon                      { $1 }-        | '(' ')'                       { LL $ getRdrName unitTyCon }-        | '(#' '#)'                     { LL $ getRdrName unboxedUnitTyCon }--ntgtycon :: { Located RdrName }  -- A "general" qualified tycon, excluding unit tuples-        : oqtycon                       { $1 }-        | '(' commas ')'                { LL $ getRdrName (tupleTyCon BoxedTuple ($2 + 1)) }-        | '(#' commas '#)'              { LL $ getRdrName (tupleTyCon UnboxedTuple ($2 + 1)) }-        | '(' '->' ')'                  { LL $ getRdrName funTyCon }-        | '[' ']'                       { LL $ listTyCon_RDR }-        | '[:' ':]'                     { LL $ parrTyCon_RDR }-        | '(' '~#' ')'                  { LL $ getRdrName eqPrimTyCon }--oqtycon :: { Located RdrName }  -- An "ordinary" qualified tycon;-                                -- These can appear in export lists-        : qtycon                        { $1 }-        | '(' qtyconsym ')'             { LL (unLoc $2) }-        | '(' '~' ')'                   { LL $ eqTyCon_RDR }--qtyconop :: { Located RdrName } -- Qualified or unqualified-        : qtyconsym                     { $1 }-        | '`' qtycon '`'                { LL (unLoc $2) }--qtycon :: { Located RdrName }   -- Qualified or unqualified-        : QCONID                        { L1 $! mkQual tcClsName (getQCONID $1) }-        | PREFIXQCONSYM                 { L1 $! mkQual tcClsName (getPREFIXQCONSYM $1) }-        | tycon                         { $1 }--tycon   :: { Located RdrName }  -- Unqualified-        : CONID                         { L1 $! mkUnqual tcClsName (getCONID $1) }--qtyconsym :: { Located RdrName }-        : QCONSYM                       { L1 $! mkQual tcClsName (getQCONSYM $1) }-        | QVARSYM                       { L1 $! mkQual tcClsName (getQVARSYM $1) }-        | tyconsym                      { $1 }---- Does not include "!", because that is used for strictness marks---               or ".", because that separates the quantified type vars from the rest-tyconsym :: { Located RdrName }-        : CONSYM                        { L1 $! mkUnqual tcClsName (getCONSYM $1) }-        | VARSYM                        { L1 $! mkUnqual tcClsName (getVARSYM $1) }-        | '*'                           { L1 $! mkUnqual tcClsName (fsLit "*")    }----------------------------------------------------------------------------------- Operators--op      :: { Located RdrName }   -- used in infix decls-        : varop                 { $1 }-        | conop                 { $1 }--varop   :: { Located RdrName }-        : varsym                { $1 }-        | '`' varid '`'         { LL (unLoc $2) }--qop     :: { LHsExpr RdrName }   -- used in sections-        : qvarop                { L1 $ HsVar (unLoc $1) }-        | qconop                { L1 $ HsVar (unLoc $1) }--qopm    :: { LHsExpr RdrName }   -- used in sections-        : qvaropm               { L1 $ HsVar (unLoc $1) }-        | qconop                { L1 $ HsVar (unLoc $1) }--qvarop :: { Located RdrName }-        : qvarsym               { $1 }-        | '`' qvarid '`'        { LL (unLoc $2) }--qvaropm :: { Located RdrName }-        : qvarsym_no_minus      { $1 }-        | '`' qvarid '`'        { LL (unLoc $2) }---------------------------------------------------------------------------------- Type variables--tyvar   :: { Located RdrName }-tyvar   : tyvarid               { $1 }--tyvarop :: { Located RdrName }-tyvarop : '`' tyvarid '`'       { LL (unLoc $2) }-        | '.'                   {% parseErrorSDoc (getLoc $1) -                                      (vcat [ptext (sLit "Illegal symbol '.' in type"), -                                             ptext (sLit "Perhaps you intended -XRankNTypes or similar flag"),-                                             ptext (sLit "to enable explicit-forall syntax: forall <tvs>. <type>")])-                                }--tyvarid :: { Located RdrName }-        : VARID                 { L1 $! mkUnqual tvName (getVARID $1) }-        | special_id            { L1 $! mkUnqual tvName (unLoc $1) }-        | 'unsafe'              { L1 $! mkUnqual tvName (fsLit "unsafe") }-        | 'safe'                { L1 $! mkUnqual tvName (fsLit "safe") }-        | 'interruptible'       { L1 $! mkUnqual tvName (fsLit "interruptible") }---------------------------------------------------------------------------------- Variables --var     :: { Located RdrName }-        : varid                 { $1 }-        | '(' varsym ')'        { LL (unLoc $2) }--qvar    :: { Located RdrName }-        : qvarid                { $1 }-        | '(' varsym ')'        { LL (unLoc $2) }-        | '(' qvarsym1 ')'      { LL (unLoc $2) }--- We've inlined qvarsym here so that the decision about--- whether it's a qvar or a var can be postponed until--- *after* we see the close paren.--qvarid :: { Located RdrName }-        : varid                 { $1 }-        | QVARID                { L1 $! mkQual varName (getQVARID $1) }-        | PREFIXQVARSYM         { L1 $! mkQual varName (getPREFIXQVARSYM $1) }--varid :: { Located RdrName }-        : VARID                 { L1 $! mkUnqual varName (getVARID $1) }-        | special_id            { L1 $! mkUnqual varName (unLoc $1) }-        | 'unsafe'              { L1 $! mkUnqual varName (fsLit "unsafe") }-        | 'safe'                { L1 $! mkUnqual varName (fsLit "safe") }-        | 'interruptible'       { L1 $! mkUnqual varName (fsLit "interruptible") }-        | 'forall'              { L1 $! mkUnqual varName (fsLit "forall") }-        | 'family'              { L1 $! mkUnqual varName (fsLit "family") }--qvarsym :: { Located RdrName }-        : varsym                { $1 }-        | qvarsym1              { $1 }--qvarsym_no_minus :: { Located RdrName }-        : varsym_no_minus       { $1 }-        | qvarsym1              { $1 }--qvarsym1 :: { Located RdrName }-qvarsym1 : QVARSYM              { L1 $ mkQual varName (getQVARSYM $1) }--varsym :: { Located RdrName }-        : varsym_no_minus       { $1 }-        | '-'                   { L1 $ mkUnqual varName (fsLit "-") }--varsym_no_minus :: { Located RdrName } -- varsym not including '-'-        : VARSYM                { L1 $ mkUnqual varName (getVARSYM $1) }-        | special_sym           { L1 $ mkUnqual varName (unLoc $1) }----- These special_ids are treated as keywords in various places, --- but as ordinary ids elsewhere.   'special_id' collects all these--- except 'unsafe', 'interruptible', 'forall', and 'family' whose treatment differs--- depending on context -special_id :: { Located FastString }-special_id-        : 'as'                  { L1 (fsLit "as") }-        | 'qualified'           { L1 (fsLit "qualified") }-        | 'hiding'              { L1 (fsLit "hiding") }-        | 'export'              { L1 (fsLit "export") }-        | 'label'               { L1 (fsLit "label")  }-        | 'dynamic'             { L1 (fsLit "dynamic") }-        | 'stdcall'             { L1 (fsLit "stdcall") }-        | 'ccall'               { L1 (fsLit "ccall") }-        | 'capi'                { L1 (fsLit "capi") }-        | 'prim'                { L1 (fsLit "prim") }-        | 'group'               { L1 (fsLit "group") }--special_sym :: { Located FastString }-special_sym : '!'       { L1 (fsLit "!") }-            | '.'       { L1 (fsLit ".") }-            | '*'       { L1 (fsLit "*") }---------------------------------------------------------------------------------- Data constructors--qconid :: { Located RdrName }   -- Qualified or unqualified-        : conid                 { $1 }-        | QCONID                { L1 $! mkQual dataName (getQCONID $1) }-        | PREFIXQCONSYM         { L1 $! mkQual dataName (getPREFIXQCONSYM $1) }--conid   :: { Located RdrName }-        : CONID                 { L1 $ mkUnqual dataName (getCONID $1) }--qconsym :: { Located RdrName }  -- Qualified or unqualified-        : consym                { $1 }-        | QCONSYM               { L1 $ mkQual dataName (getQCONSYM $1) }--consym :: { Located RdrName }-        : CONSYM                { L1 $ mkUnqual dataName (getCONSYM $1) }--        -- ':' means only list cons-        | ':'                   { L1 $ consDataCon_RDR }----------------------------------------------------------------------------------- Literals--literal :: { Located HsLit }-        : CHAR                  { L1 $ HsChar       $ getCHAR $1 }-        | STRING                { L1 $ HsString     $ getSTRING $1 }-        | PRIMINTEGER           { L1 $ HsIntPrim    $ getPRIMINTEGER $1 }-        | PRIMWORD              { L1 $ HsWordPrim    $ getPRIMWORD $1 }-        | PRIMCHAR              { L1 $ HsCharPrim   $ getPRIMCHAR $1 }-        | PRIMSTRING            { L1 $ HsStringPrim $ getPRIMSTRING $1 }-        | PRIMFLOAT             { L1 $ HsFloatPrim  $ getPRIMFLOAT $1 }-        | PRIMDOUBLE            { L1 $ HsDoublePrim $ getPRIMDOUBLE $1 }---------------------------------------------------------------------------------- Layout--close :: { () }-        : vccurly               { () } -- context popped in lexer.-        | error                 {% popContext }---------------------------------------------------------------------------------- Miscellaneous (mostly renamings)--modid   :: { Located ModuleName }-        : CONID                 { L1 $ mkModuleNameFS (getCONID $1) }-        | QCONID                { L1 $ let (mod,c) = getQCONID $1 in-                                  mkModuleNameFS-                                   (mkFastString-                                     (unpackFS mod ++ '.':unpackFS c))-                                }--commas :: { Int }-        : commas ','                    { $1 + 1 }-        | ','                           { 1 }---------------------------------------------------------------------------------- Documentation comments--docnext :: { LHsDocString }-  : DOCNEXT {% return (L1 (HsDocString (mkFastString (getDOCNEXT $1)))) }--docprev :: { LHsDocString }-  : DOCPREV {% return (L1 (HsDocString (mkFastString (getDOCPREV $1)))) }--docnamed :: { Located (String, HsDocString) }-  : DOCNAMED {%-      let string = getDOCNAMED $1 -          (name, rest) = break isSpace string-      in return (L1 (name, HsDocString (mkFastString rest))) }--docsection :: { Located (Int, HsDocString) }-  : DOCSECTION {% let (n, doc) = getDOCSECTION $1 in-        return (L1 (n, HsDocString (mkFastString doc))) }--moduleheader :: { Maybe LHsDocString }-        : DOCNEXT {% let string = getDOCNEXT $1 in-                     return (Just (L1 (HsDocString (mkFastString string)))) }--maybe_docprev :: { Maybe LHsDocString }-        : docprev                       { Just $1 }-        | {- empty -}                   { Nothing }--maybe_docnext :: { Maybe LHsDocString }-        : docnext                       { Just $1 }-        | {- empty -}                   { Nothing }--{-happyError :: P a-happyError = srcParseFail--getVARID        (L _ (ITvarid    x)) = x-getCONID        (L _ (ITconid    x)) = x-getVARSYM       (L _ (ITvarsym   x)) = x-getCONSYM       (L _ (ITconsym   x)) = x-getQVARID       (L _ (ITqvarid   x)) = x-getQCONID       (L _ (ITqconid   x)) = x-getQVARSYM      (L _ (ITqvarsym  x)) = x-getQCONSYM      (L _ (ITqconsym  x)) = x-getPREFIXQVARSYM (L _ (ITprefixqvarsym  x)) = x-getPREFIXQCONSYM (L _ (ITprefixqconsym  x)) = x-getIPDUPVARID   (L _ (ITdupipvarid   x)) = x-getCHAR         (L _ (ITchar     x)) = x-getSTRING       (L _ (ITstring   x)) = x-getINTEGER      (L _ (ITinteger  x)) = x-getRATIONAL     (L _ (ITrational x)) = x-getPRIMCHAR     (L _ (ITprimchar   x)) = x-getPRIMSTRING   (L _ (ITprimstring x)) = x-getPRIMINTEGER  (L _ (ITprimint    x)) = x-getPRIMWORD     (L _ (ITprimword x)) = x-getPRIMFLOAT    (L _ (ITprimfloat  x)) = x-getPRIMDOUBLE   (L _ (ITprimdouble x)) = x-getTH_ID_SPLICE (L _ (ITidEscape x)) = x-getINLINE       (L _ (ITinline_prag inl conl)) = (inl,conl)-getSPEC_INLINE  (L _ (ITspec_inline_prag True))  = (Inline,  FunLike)-getSPEC_INLINE  (L _ (ITspec_inline_prag False)) = (NoInline,FunLike)--getDOCNEXT (L _ (ITdocCommentNext x)) = x-getDOCPREV (L _ (ITdocCommentPrev x)) = x-getDOCNAMED (L _ (ITdocCommentNamed x)) = x-getDOCSECTION (L _ (ITdocSection n x)) = (n, x)--getSCC :: Located Token -> P FastString-getSCC lt = do let s = getSTRING lt-                   err = "Spaces are not allowed in SCCs"-               -- We probably actually want to be more restrictive than this-               if ' ' `elem` unpackFS s-                   then failSpanMsgP (getLoc lt) (text err)-                   else return s---- Utilities for combining source spans-comb2 :: Located a -> Located b -> SrcSpan-comb2 a b = a `seq` b `seq` combineLocs a b--comb3 :: Located a -> Located b -> Located c -> SrcSpan-comb3 a b c = a `seq` b `seq` c `seq`-    combineSrcSpans (getLoc a) (combineSrcSpans (getLoc b) (getLoc c))--comb4 :: Located a -> Located b -> Located c -> Located d -> SrcSpan-comb4 a b c d = a `seq` b `seq` c `seq` d `seq`-    (combineSrcSpans (getLoc a) $ combineSrcSpans (getLoc b) $-                combineSrcSpans (getLoc c) (getLoc d))---- strict constructor version:-{-# INLINE sL #-}-sL :: SrcSpan -> a -> Located a-sL span a = span `seq` a `seq` L span a---- Make a source location for the file.  We're a bit lazy here and just--- make a point SrcSpan at line 1, column 0.  Strictly speaking we should--- try to find the span of the whole file (ToDo).-fileSrcSpan :: P SrcSpan-fileSrcSpan = do -  l <- getSrcLoc; -  let loc = mkSrcLoc (srcLocFile l) 1 1;-  return (mkSrcSpan loc loc)---- Hint about the MultiWayIf extension-hintMultiWayIf :: SrcSpan -> P ()-hintMultiWayIf span = do-  mwiEnabled <- liftM ((Opt_MultiWayIf `xopt`) . dflags) getPState-  unless mwiEnabled $ parseErrorSDoc span $-    text "Multi-way if-expressions need -XMultiWayIf turned on"-}
Hspec.hs view
@@ -6,12 +6,13 @@ import Data.List import System.Directory import Data.String.Here-import Data.String.Utils (strip)+import Data.String.Utils (strip, replace)  import IHaskell.Eval.Parser import IHaskell.Types import IHaskell.IPython-import IHaskell.Eval.Evaluate+import IHaskell.Eval.Evaluate as Eval+import IHaskell.Eval.Completion  import Test.Hspec import Test.Hspec.HUnit@@ -24,13 +25,13 @@  is string blockType = do   result <- doGhc $ parseString string-  result `shouldBe` [blockType string]+  result `shouldBe` [blockType $ strip string]  eval string = do   outputAccum <- newIORef []-  let publish displayDatas = liftIO $ modifyIORef outputAccum (displayDatas :)+  let publish _ displayDatas = modifyIORef outputAccum (displayDatas :)   getTemporaryDirectory >>= setCurrentDirectory-  interpret $ evaluate 1 string publish+  interpret $ Eval.evaluate 1 string publish   out <- readIORef outputAccum   return $ reverse out @@ -53,17 +54,90 @@        forM_ (zip results expected) $ \(result, expected) ->         case find isPlain result of-          Just (Display PlainText str) -> expected `shouldBe` str+          Just (Display PlainText str) -> str `shouldBe` expected           Nothing -> expectationFailure $ "No plain-text output in " ++ show result +completes string expected = completionTarget newString cursorloc `shouldBe` expected+  where (newString, cursorloc) = case elemIndex '!' string of+          Nothing -> error "Expected cursor written as '!'."+          Just idx -> (replace "!" "" string, idx) +completionHas string expected = do+    (matched, completions) <- doGhc $ do+      initCompleter+      complete newString cursorloc+    let existsInCompletion =  (`elem` completions)+        unmatched = filter (not . existsInCompletion) expected+    unmatched `shouldBe` []+  where (newString, cursorloc) = case elemIndex '!' string of+          Nothing -> error "Expected cursor written as '!'."+          Just idx -> (replace "!" "" string, idx) +initCompleter :: GhcMonad m => m ()+initCompleter = do+  flags <- getSessionDynFlags+  setSessionDynFlags $ flags { hscTarget = HscInterpreted, ghcLink = LinkInMemory }++  -- Import modules.+  imports <- mapM parseImportDecl ["import Prelude",+                                  "import qualified Control.Monad",+                                  "import qualified Data.List as List",+                                  "import Data.Maybe as Maybe"]+  setContext $ map IIDecl imports+ main :: IO () main = hspec $ do   parserTests   ipythonTests   evalTests+  completionTests +completionTests = do+  describe "Completion" $ do+    it "correctly gets the completion identifier without dots" $ do+       "hello!"              `completes` ["hello"]+       "hello aa!bb goodbye" `completes` ["aa"]+       "hello aabb! goodbye" `completes` ["aabb"]+       "aacc! goodbye"       `completes` ["aacc"]+       "hello !aabb goodbye" `completes` []+       "!aabb goodbye"       `completes` []++    it "correctly gets the completion identifier with dots" $ do+       "hello test.aa!bb goodbye" `completes` ["test", "aa"]+       "Test.!"                   `completes` ["Test", ""]+       "Test.Thing!"              `completes` ["Test", "Thing"]+       "Test.Thing.!"             `completes` ["Test", "Thing", ""]+       "Test.Thing.!nope"         `completes` ["Test", "Thing", ""]++    it "correctly gets the completion type" $ do+      completionType "import Data." ["Data", ""]      `shouldBe` ModuleName "Data" ""+      completionType "import Prel" ["Prel"]           `shouldBe` ModuleName "" "Prel"+      completionType "import D.B.M" ["D", "B", "M"]   `shouldBe` ModuleName "D.B" "M"+      completionType " import A." ["A", ""]           `shouldBe` ModuleName "A" ""+      completionType "import a.x" ["a", "x"]          `shouldBe` Identifier "x"+      completionType "A.x" ["A", "x"]                 `shouldBe` Qualified "A" "x"+      completionType "a.x" ["a", "x"]                 `shouldBe` Identifier "x"+      completionType "pri" ["pri"]                    `shouldBe` Identifier "pri"++    it "properly completes identifiers" $ do+       "pri!"           `completionHas` ["print"]+       "ma!"            `completionHas` ["map"]+       "hello ma!"      `completionHas` ["map"]+       "print $ catMa!" `completionHas` ["catMaybes"]++    it "properly completes qualified identifiers" $ do+       "Control.Monad.liftM!"    `completionHas` [ "Control.Monad.liftM"+                                                 , "Control.Monad.liftM2"+                                                 , "Control.Monad.liftM5"]+       "print $ List.intercal!"  `completionHas` ["List.intercalate"]+       "print $ Data.Maybe.cat!" `completionHas` ["Data.Maybe.catMaybes"]+       "print $ Maybe.catM!"     `completionHas` ["Maybe.catMaybes"]++    it "properly completes imports" $ do+      "import Data.!"  `completionHas` ["Data.Maybe", "Data.List"]+      "import Data.M!" `completionHas` ["Data.Maybe"]+      "import Prel!"   `completionHas` ["Prelude"]+ evalTests = do   describe "Code Evaluation" $ do     it "evaluates expressions" $  do@@ -100,6 +174,14 @@         print (Y 3 == Z "No")       |] `becomes` ["[Y 3,Z \"No\"]", "False"] +    it "evaluates do blocks in expressions" $ do+      [hereLit|+        show (show (do+            Just 10+            Nothing+            Just 100))+      |] `becomes` ["\"\\\"Nothing\\\"\""]+     it "is silent for imports" $ do       "import Control.Monad" `becomes` []       "import qualified Control.Monad" `becomes` []@@ -120,20 +202,10 @@       parseVersion "12.5.10" `shouldBe` [12, 5, 10]  parserTests = do-  splitAtLocTests   layoutChunkerTests   moduleNameTests   parseStringTests --splitAtLocTests = describe "String Splitting Util" $ do-  it "splits properly (example 1)" $-    splitAtLoc 2 3 "abc\ndefghi\nxyz\n123" `shouldBe` ("abc\nde","fghi\nxyz\n123")-  it "splits properly (example 2)" $-    splitAtLoc 2 1 "abc" `shouldBe` ("abc","")-  it "splits properly (example 3)" $-    splitAtLoc 2 1 "abc\nhello" `shouldBe` ("abc\n","hello")- layoutChunkerTests = describe "Layout Chunk" $ do   it "chunks 'a string'" $     layoutChunks "a string" `shouldBe` ["a string"]@@ -228,13 +300,13 @@    it "parses a <- stmt followed by let stmt" $     parses "y <- do print 'no'\nlet x = expr" `like` [-      Statement "y <- do { print 'no' }",+      Statement "y <- do print 'no'",       Statement "let x = expr"     ]    it "parses <- followed by let followed by expr" $     parses "y <- do print 'no'\nlet x = expr\nexpression" `like` [-      Statement "y <- do { print 'no' }",+      Statement "y <- do print 'no'",       Statement "let x = expr",       Expression "expression"     ]@@ -288,3 +360,23 @@         Import "import X",         Expression "print 3"        ]+  it "ignores blank lines properly" $ +    [hereLit|+      test arg = hello+        where+          x = y++          z = w+    |] `is` Declaration+  it "doesn't break on long strings" $ do+    let longString = concat $ replicate 20 "hello "+    ("img ! src \"" ++ longString ++ "\" ! width \"500\"") `is` Expression++  it "parses do blocks in expression" $ do+    [hereLit|+      show (show (do+        Just 10+        Nothing+        Just 100))+    |] `is` Expression+    
IHaskell/Display.hs view
@@ -2,8 +2,7 @@ {-# LANGUAGE TypeSynonymInstances, FlexibleInstances #-} module IHaskell.Display (   IHaskellDisplay(..),-  plain,-  html,+  plain, html, png, jpg, svg, latex,   serializeDisplay   ) where @@ -25,6 +24,18 @@ -- | Generate an HTML display. html :: String -> DisplayData html = Display MimeHtml++png :: String -> DisplayData+png = Display MimePng ++jpg :: String -> DisplayData+jpg = Display MimeJpg++svg :: String -> DisplayData+svg = Display MimeSvg++latex :: String -> DisplayData+latex = Display MimeLatex  serializeDisplay :: [DisplayData] -> ByteString serializeDisplay = Serialize.encode
IHaskell/Eval/Completion.hs view
@@ -15,56 +15,142 @@   names should not be confused by the third option.  -}-module IHaskell.Eval.Completion (makeCompletions) where+module IHaskell.Eval.Completion (complete, completionTarget, completionType, CompletionType(..)) where -import Prelude-import Data.List (find, isPrefixOf, nub)-import qualified GHC-import Outputable (showPpr)+import Control.Applicative ((<$>))+import Data.ByteString.UTF8 hiding (drop, take) import Data.Char-import Data.ByteString.UTF8 hiding (drop)+import Data.List (find, isPrefixOf, nub, findIndex, intercalate, elemIndex) import Data.List.Split import Data.List.Split.Internals import Data.Maybe+import Data.String.Utils (strip, startswith, replace)+import Prelude +import GHC+import DynFlags+import GhcMonad+import PackageConfig+import Outputable (showPpr)+ import IHaskell.Types -import Control.Applicative ((<$>)) -makeCompletions :: GHC.GhcMonad m => MessageHeader -> Message -> m Message-makeCompletions replyHeader (CompleteRequest _ _ line pos) = do-    names <- GHC.getRdrNamesInScope-    flags <- GHC.getProgramDynFlags+data CompletionType +     = Empty +     | Identifier String+     | Extension String+     | Qualified String String+     | ModuleName String String+     deriving (Show, Eq) -    let maybeCand = getWordAt (toString line) pos-        options =-          case maybeCand of-            Nothing -> []-            Just candidate -> nub $ filter (candidate `isPrefixOf`) $ map (showPpr flags) names-        matched_text = fromString $ fromMaybe "" maybeCand+complete :: GHC.GhcMonad m => String -> Int -> m (String, [String])+complete line pos = do+  flags <- getSessionDynFlags+  rdrNames <- map (showPpr flags) <$> getRdrNamesInScope+  scopeNames <- nub <$> map (showPpr flags) <$> getNamesInScope+  let isQualified = ('.' `elem`)+      unqualNames = nub $ filter (not . isQualified) rdrNames+      qualNames = nub $ scopeNames ++ filter isQualified rdrNames -    return $ CompleteReply replyHeader (map fromString options) matched_text line True+  let Just db = pkgDatabase flags+      getNames = map moduleNameString . exposedModules+      moduleNames = nub $ concatMap getNames db +  let target = completionTarget line pos+      matchedText = intercalate "." target +  options <- +        case completionType line target of+          Empty -> return []++          Identifier candidate ->+            return $ filter (candidate `isPrefixOf`) unqualNames++          Qualified moduleName candidate -> do+            trueName <- getTrueModuleName moduleName+            let prefix = intercalate "." [trueName, candidate]+                completions = filter (prefix `isPrefixOf`)  qualNames+                falsifyName = replace trueName moduleName+            return $ map falsifyName completions++          ModuleName previous candidate -> do+            let prefix = if null previous+                         then candidate+                         else intercalate "." [previous, candidate]+            return $ filter (prefix `isPrefixOf`) moduleNames++          Extension ext -> do+            let extName (name, _, _) = name+                names = map extName xFlags+                nonames = map ("No" ++) names+            return $ filter (ext `isPrefixOf`) $ names ++ nonames++  return (matchedText, options)++getTrueModuleName :: GhcMonad m => String -> m String+getTrueModuleName name = do+  -- Only use the things that were actually imported+  let onlyImportDecl (IIDecl decl) = Just decl+      onlyImportDecl _ = Nothing++  -- Get all imports that we use.+  imports <- catMaybes <$> map onlyImportDecl <$> getContext++  -- Find the ones that have a qualified name attached.+  -- If this name isn't one of them, it already is the true name.+  flags <- getSessionDynFlags+  let qualifiedImports = filter (isJust . ideclAs) imports+      hasName imp = name == (showPpr flags . fromJust . ideclAs) imp+  case find hasName qualifiedImports of+    Nothing -> return name  +    Just trueImp -> return $ showPpr flags $ unLoc $ ideclName trueImp++completionType :: String -> [String] -> CompletionType+completionType line [] = Empty+completionType line target+  | startswith "import" stripped && isModName+    = ModuleName dotted candidate+  | isModName && (not . null . init) target+    = Qualified dotted candidate+  | startswith ":e" stripped+    = Extension candidate +  | otherwise+    = Identifier candidate+  where stripped = strip line+        dotted = dots target+        candidate = last target+        dots = intercalate "." . init+        isModName = all isCapitalized (init target)+        isCapitalized = isUpper . head++ -- | Get the word under a given cursor location.-getWordAt :: String -> Int -> Maybe String-getWordAt xs n = map fst <$> find (elem n .  map snd) (split splitter $ zip xs [1 .. ])+completionTarget :: String -> Int -> [String]+completionTarget code cursor = expandCompletionPiece pieceToComplete   where +    pieceToComplete = map fst <$> find (elem cursor . map snd) pieces+    pieces = splitAlongCursor $ split splitter $ zip code [1 .. ]     splitter = defaultSplitter {       -- Split using only the characters, which are the first elements of       -- the (char, index) tuple-      delimiter = Delimiter [isDelim . fst],-      -- Condense multiple delimiters into one-      condensePolicy = Condense+      delimiter = Delimiter [uncurry isDelim],+      -- Condense multiple delimiters into one and then drop them.+      condensePolicy = Condense,+      delimPolicy = Drop     } -    isDelim char =-      case drop (max 0 (n - 1)) xs of-        x:_ -> (char `elem` neverIdent) || if isSymbol x-           then isAlpha char-           else isSymbol char-        _ -> char `elem` neverIdent+    isDelim char idx = char `elem` neverIdent || isSymbol char -    -- These are never part of an identifier, except for the dot.-    -- Qualified names are tricky!-    neverIdent = " \t(),{}[]\\'\"`."+    splitAlongCursor :: [[(Char, Int)]] -> [[(Char, Int)]]+    splitAlongCursor [] = []+    splitAlongCursor (x:xs) = +      case elemIndex cursor $  map snd x of+        Nothing -> x:splitAlongCursor xs+        Just idx -> take (idx + 1) x:drop (idx + 1) x:splitAlongCursor xs++    -- These are never part of an identifier.+    neverIdent = " \n\t(),{}[]\\'\"`"++    expandCompletionPiece Nothing = []+    expandCompletionPiece (Just str) = splitOn "." str 
IHaskell/Eval/Evaluate.hs view
@@ -5,10 +5,11 @@ This module exports all functions used for evaluation of IHaskell input. -} module IHaskell.Eval.Evaluate (-  interpret, evaluate, Interpreter, liftIO, typeCleaner+  interpret, evaluate, Interpreter, liftIO, typeCleaner, globalImports   ) where  import ClassyPrelude hiding (liftIO, hGetContents)+import Control.Concurrent (forkIO, threadDelay) import Prelude (putChar, head, tail, last, init, (!!)) import Data.List.Utils import Data.List(findIndex)@@ -19,9 +20,12 @@ import Data.Typeable import qualified Data.Serialize as Serialize import System.Directory (removeFile, createDirectoryIfMissing, removeDirectoryRecursive)+import System.Posix.IO+import System.IO (hGetChar, hFlush)+import System.Random (getStdGen, randomRs)+import Unsafe.Coerce  import NameSet-import DynFlags (defaultObjectTarget) import Name import PprTyThing import InteractiveEval@@ -63,31 +67,6 @@     fullPrefixes = map (++ ".") ignoreTypePrefixes     useStringType = replace "[Char]" "String" -makeWrapperStmts :: (String, [String], [String])-makeWrapperStmts = (fileName, initStmts, postStmts)-  where-    randStr = "1345964344725219474" :: String-    fileVariable = "file_var_" ++ randStr-    oldVariable = fileVariable ++ "_old"-    itVariable = "it_var_" ++ randStr-    fileName = ".ihaskell_capture"--    initStmts :: [String]-    initStmts = [-      printf "let %s = it" itVariable,-      printf "%s <- openFile \"%s\" WriteMode" fileVariable fileName,-      printf "%s <- hDuplicate stdout" oldVariable,-      printf "hDuplicateTo %s stdout" fileVariable,-      printf "let it = %s" itVariable]--    postStmts :: [String]-    postStmts = [-      printf "let %s = it" itVariable,-      "hFlush stdout",-      printf "hDuplicateTo %s stdout" oldVariable,-      printf "hClose %s" fileVariable,-      printf "let it = %s" itVariable]- write :: GhcMonad m => String -> m () write x = when debug $ liftIO $ hPutStrLn stderr x @@ -98,6 +77,8 @@   [ "import IHaskell.Display"   , "import Control.Applicative ((<$>))"   , "import GHC.IO.Handle (hDuplicateTo, hDuplicate)"+  , "import System.Posix.IO"+  , "import System.Posix.Files"   , "import System.IO"   ] @@ -146,6 +127,7 @@   let implicitPrelude = importDecl { ideclImplicit = True }    -- Import modules.+  mapM_ (write . ("Importing " ++ )) displayImports   imports <- mapM parseImportDecl $ globalImports ++ displayImports   setContext $ map IIDecl $ implicitPrelude : imports @@ -156,10 +138,14 @@   -- statements - if it doesn't exist, the first statement will fail.   void $ runStmt "let it = ()" RunToCompletion +-- | Publisher for IHaskell outputs.  The first argument indicates whether+-- this output is final (true) or intermediate (false).+type Publisher = (Bool -> [DisplayData] -> IO ())+ -- | Evaluate some IPython input code.-evaluate :: Int                                -- ^ The execution counter of this evaluation.-         -> String                             -- ^ Haskell code or other interpreter commands.-         -> ([DisplayData] -> Interpreter ())   -- ^ Function used to publish data outputs.+evaluate :: Int              -- ^ The execution counter of this evaluation.+         -> String           -- ^ Haskell code or other interpreter commands.+         -> Publisher        -- ^ Function used to publish data outputs.          -> Interpreter () evaluate execCount code output = do   cmds <- parseString (strip code)@@ -168,8 +154,8 @@     runUntilFailure :: [CodeBlock] -> Interpreter ()     runUntilFailure [] = return ()     runUntilFailure (cmd:rest) = do -      (success, result) <- evalCommand cmd-      unless (null result) $ output result+      (success, result) <- evalCommand output cmd+      unless (null result) $ liftIO $ output True result       case success of         Success -> runUntilFailure rest         Failure -> return ()@@ -185,8 +171,8 @@  -- | Return the display data for this command, as well as whether it -- resulted in an error.-evalCommand :: CodeBlock -> Interpreter (ErrorOccurred, [DisplayData])-evalCommand (Import importStr) = wrapExecution $ do+evalCommand :: Publisher -> CodeBlock -> Interpreter (ErrorOccurred, [DisplayData])+evalCommand _ (Import importStr) = wrapExecution $ do   write $ "Import: " ++ importStr   importDecl <- parseImportDecl importStr   context <- getContext@@ -202,7 +188,8 @@     implicitImportOf _ (IIModule _) = False     implicitImportOf imp (IIDecl decl) = ideclImplicit decl && ((==) `on` (unLoc . ideclName)) decl imp -evalCommand (Module contents) = wrapExecution $ do+evalCommand _ (Module contents) = wrapExecution $ do+  write $ "Module:\n" ++ contents   -- Write the module contents to a temporary file in our work directory   namePieces <- getModuleName contents   let directory = "./" ++ intercalate "/" (init namePieces) ++ "/"@@ -270,11 +257,12 @@         Succeeded -> return []         Failed -> return $ displayError $ "Failed to load module " ++ modName -evalCommand (Directive SetExtension exts) = wrapExecution $ do-    results <- mapM setExtension (words exts)-    case catMaybes results of-      [] -> return []-      errors -> return $ displayError $ intercalate "\n" errors+evalCommand _ (Directive SetExtension exts) = wrapExecution $ do+  write $ "Extension: " ++ exts+  results <- mapM setExtension (words exts)+  case catMaybes results of+    [] -> return []+    errors -> return $ displayError $ intercalate "\n" errors   where     -- Set an extension and update flags.     -- Return Nothing on success. On failure, return an error message.@@ -304,14 +292,17 @@     -- In that case, we disable the extension.     flagMatchesNo ext (name, _, _) = ext == "No"  ++ name -evalCommand (Directive GetType expr) = wrapExecution $ do+evalCommand _ (Directive GetType expr) = wrapExecution $ do+  write $ "Type: " ++ expr   result <- exprType expr   flags <- getSessionDynFlags   let typeStr = showSDocUnqual flags $ ppr result   return [plain typeStr, html $ formatGetType typeStr]  -- This is taken largely from GHCi's info section in InteractiveUI.-evalCommand (Directive HelpForSet _) = return (Success, [out])+evalCommand _ (Directive HelpForSet _) = do+  write "Help for :set."+  return (Success, [out])   where out = plain $ intercalate "\n"           [":set is not implemented in IHaskell."           ,"  Use :extension <Extension> to enable a GHC extension."@@ -319,7 +310,9 @@           ]  -- This is taken largely from GHCi's info section in InteractiveUI.-evalCommand (Directive GetHelp _) = return (Success, [out])+evalCommand _ (Directive GetHelp _) = do+  write "Help via :help or :?."+  return (Success, [out])   where out = plain $ intercalate "\n"           ["The following commands are available:"           ,"    :extension <Extension>    -  enable a GHC extension."@@ -332,7 +325,8 @@           ]  -- This is taken largely from GHCi's info section in InteractiveUI.-evalCommand (Directive GetInfo str) = wrapExecution $ do+evalCommand _ (Directive GetInfo str) = wrapExecution $ do+  write $ "Info: " ++ str   -- Get all the info for all the names we're given.   names     <- parseName str   maybeInfos <- mapM getInfo names@@ -363,66 +357,44 @@   let strings = map (showSDocForUser flags unqual) outs   return [plain $ intercalate "\n" strings] -evalCommand (Statement stmt) = do-  write $ "Statement: " ++ stmt-  ghandle handler $ do-    (printed, result) <- capturedStatement stmt-    case result of-      RunOk names -> do-        dflags <- getSessionDynFlags-        write $ "Names: " ++ show (map (showPpr dflags) names)  -        let output = [plain printed | not . null $ strip printed]-        return (Success, output)-      RunException exception -> do-        write $ "RunException: " ++ show exception-        return (Failure, displayError $ show exception)-      RunBreak{} ->-        error "Should not break."-  where -    handler :: SomeException -> Interpreter (ErrorOccurred, [DisplayData])-    handler exception = do-      write $ concat ["BreakCom: ", show exception, "\nfrom statement:\n", stmt]--      -- Close the file handle we opened for writing stdout and other cleanup.-      let (_, _, postStmts) = makeWrapperStmts-      forM_ postStmts $ \s -> runStmt s RunToCompletion--      return (Failure, displayError $ show exception)+evalCommand output (Statement stmt) = wrapExecution $ do+  write $ "Statement:\n" ++ stmt+  let outputter str = output False [plain str]+  (printed, result) <- capturedStatement outputter stmt+  case result of+    RunOk names -> do+      dflags <- getSessionDynFlags+      write $ "Names: " ++ show (map (showPpr dflags) names)  +      let output = [plain printed | not . null $ strip printed]+      return output+    RunException exception -> throw exception+    RunBreak{} -> error "Should not break." -evalCommand (Expression expr) = do+evalCommand output (Expression expr) = do+  write $ "Expression:\n" ++ expr   -- Evaluate this expression as though it's just a statement.   -- The output is bound to 'it', so we can then use it.-  (success, out) <- evalCommand (Statement expr)+  (success, out) <- evalCommand output (Statement expr) +    -- Try to use `display` to convert our type into the output+  -- DisplayData. If typechecking fails and there is no appropriate+  -- typeclass, this will throw an exception and thus `attempt` will+  -- return False, and we just resort to plaintext.+  let displayExpr = printf "(IHaskell.Display.display (%s))" expr+  canRunDisplay <- attempt $ exprType displayExpr+  write $ printf "%s: Attempting %s" (if canRunDisplay then "Success" else "Failure") displayExpr+  write $ "Show Error: " ++ show (isShowError out)+  write $ show out+   -- If evaluation failed, return the failure.  If it was successful, we   -- may be able to use the IHaskellDisplay typeclass.-  case success of-    Failure -> return (success, out)-    Success -> do-      -- Try to use `display` to convert our type into the output-      -- DisplayData. If typechecking fails and there is no appropriate-      -- typeclass, this will throw an exception and thus `attempt` will-      -- return False, and we just resort to plaintext.-      canRunDisplay <- attempt $ exprType "IHaskell.Display.display it"-      if canRunDisplay-      then do-        -- If there are instance matches, convert the object into-        -- a [DisplayData]. We also serialize it into a bytestring. We get-        -- the bytestring as a dynamic and then convert back to-        -- a bytestring, which we promptly unserialize. Note that-        -- attempting to do this without the serialization to binary and-        -- back gives very strange errors - all the types match but it-        -- refuses to decode back into a [DisplayData].-        displayedBytestring <- dynCompileExpr "IHaskell.Display.serializeDisplay (IHaskell.Display.display it)"-        case fromDynamic displayedBytestring of-          Nothing -> error "Expecting lazy Bytestring"-          Just bytestring ->-            case Serialize.decode bytestring of-              Left err -> error err-              Right displayData -> do-                write $ show displayData-                return (success, displayData)-      else return (success, out)+  if not canRunDisplay+  then return (success, out)+  else case success of+    Success -> useDisplay displayExpr+    Failure -> if isShowError out+              then useDisplay displayExpr+              else return (success, out)    where     -- Try to evaluate an action. Return True if it succeeds and False if@@ -432,27 +404,188 @@       where failure :: SomeException -> Interpreter Bool             failure _ = return False -evalCommand (Declaration decl) = wrapExecution $ runDecls decl >> return []+    -- Check if the error is due to trying to print something that doesn't+    -- implement the Show typeclass.+    isShowError errs = case find isPlain errs of+      Just (Display PlainText msg) -> +        startswith "No instance for (GHC.Show.Show" msg &&+        isInfixOf " arising from a use of `System.IO.print'" msg+      Nothing -> False+      where isPlain (Display mime _) = mime == PlainText -evalCommand (ParseError loc err) = wrapExecution $+    useDisplay displayExpr = wrapExecution $ do+      -- If there are instance matches, convert the object into+      -- a [DisplayData]. We also serialize it into a bytestring. We get+      -- the bytestring as a dynamic and then convert back to+      -- a bytestring, which we promptly unserialize. Note that+      -- attempting to do this without the serialization to binary and+      -- back gives very strange errors - all the types match but it+      -- refuses to decode back into a [DisplayData].+      runStmt displayExpr RunToCompletion+      displayedBytestring <- dynCompileExpr "IHaskell.Display.serializeDisplay it"+      case fromDynamic displayedBytestring of+        Nothing -> error "Expecting lazy Bytestring"+        Just bytestring ->+          case Serialize.decode bytestring of+            Left err -> error err+            Right displayData -> do+              write $ show displayData+              return displayData+++evalCommand _ (Declaration decl) = wrapExecution $ do+  write $ "Declaration:\n" ++ decl+  runDecls decl++  -- Do not display any output+  return []++evalCommand _ (ParseError loc err) = wrapExecution $ do+  write $ "Parse Error."   return $ displayError $ formatParseError loc err -capturedStatement :: String -> Interpreter (String, RunResult)-capturedStatement stmt = do+capturedStatement :: (String -> IO ())         -- ^ Function used to publish intermediate output.+                  -> String                            -- ^ Statement to evaluate.+                  -> Interpreter (String, RunResult)   -- ^ Return the output and result.+capturedStatement output stmt = do   -- Generate random variable names to use so that we cannot accidentally   -- override the variables by using the right names in the terminal.-  let (fileName, initStmts, postStmts) = makeWrapperStmts-      goStmt s = runStmt s RunToCompletion+  gen <- liftIO getStdGen+  let+    -- Variable names generation.+    rand = take 20 $ randomRs ('0', '9') gen+    var name = name ++ rand+    +    -- Variables for the pipe input and outputs.+    readVariable = var "file_read_var_"+    writeVariable = var "file_write_var_" +    -- Variable where to store old stdout.+    oldVariable = var "old_var_"++    -- Variable used to store true `it` value.+    itVariable = var "it_var_"++    voidpf str = printf $ str ++ " >> return ()"+    +    -- Statements run before the thing we're evaluating.+    initStmts = +      [ printf "let %s = it" itVariable+      , printf "(%s, %s) <- createPipe" readVariable writeVariable+      , printf "%s <- dup stdOutput" oldVariable+      , voidpf "dupTo %s stdOutput" writeVariable+      , voidpf "hSetBuffering stdout NoBuffering"+      , printf "let it = %s" itVariable+      ]+    +    -- Statements run after evaluation.+    postStmts = +      [ printf "let %s = it" itVariable+      , voidpf "hFlush stdout"+      , voidpf "dupTo %s stdOutput" oldVariable+      , voidpf "closeFd %s" writeVariable+      , printf "let it = %s" itVariable+      ]+    pipeExpr = printf "let %s = %s" (var "pipe_var_") readVariable++    goStmt s = runStmt s RunToCompletion++  -- Initialize evaluation context.   forM_ initStmts goStmt-  result <- goStmt stmt-  forM_ postStmts goStmt -  -- We must use strict IO, because we write to that file again if we-  -- execute more statements. If we read lazily, we may cause errors when-  -- trying to open the file for writing later.-  printedOutput <- liftIO $ StrictIO.readFile fileName+  -- Get the pipe to read printed output from.+  -- This is effectively the source code of dynCompileExpr from GHC API's+  -- InteractiveEval. However, instead of using a `Dynamic` as an+  -- intermediary, it just directly reads the value. This is incredibly+  -- unsafe! However, for some reason the `getContext` and `setContext`+  -- required by dynCompileExpr (to import and clear Data.Dynamic) cause+  -- issues with data declarations being updated (e.g. it drops newer+  -- versions of data declarations for older ones for unknown reasons).+  -- First, compile down to an HValue.+  Just (_, hValues, _) <- withSession $ liftIO . flip hscStmt pipeExpr+  -- Then convert the HValue into an executable bit, and read the value.+  pipe <- liftIO $ do+    fd <- head <$> unsafeCoerce hValues+    fdToHandle fd +  -- Read from a file handle until we hit a delimiter or until we've read+  -- as many characters as requested+  let +    readChars :: Handle -> String -> Int -> IO String++    -- If we're done reading, return nothing.+    readChars handle delims 0 = return []++    readChars handle delims nchars = do+      -- Try reading a single character. It will throw an exception if the+      -- handle is already closed.+      tryRead <- gtry $ hGetChar handle :: IO (Either SomeException Char)+      case tryRead of+        Right char ->+          -- If this is a delimiter, stop reading.+          if char `elem` delims+          then return [char]+          else do+            next <- readChars handle delims (nchars - 1)+            return $ char:next+        -- An error occurs at the end of the stream, so just stop reading.+        Left _ -> return []++  -- Keep track of whether execution has completed.+  completed <- liftIO $ newMVar False+  finishedReading <- liftIO newEmptyMVar+  outputAccum <- liftIO $ newMVar ""++  -- Start a loop to publish intermediate results.+  let +    -- Compute how long to wait between reading pieces of the output. +    -- `threadDelay` takes an argument of microseconds.+    ms = 1000+    delay = 100 * ms++    -- How much to read each time.+    chunkSize = 100++    -- Maximum size of the output (after which we truncate).+    maxSize = 100 * 1000++    loop = do+      -- Wait and then check if the computation is done.+      threadDelay delay+      computationDone <- readMVar completed++      if not computationDone+      then do+        -- Read next chunk and append to accumulator.+        nextChunk <- readChars pipe "\n" 100+        modifyMVar_ outputAccum (return . (++ nextChunk))++        -- Write to frontend and repeat.+        readMVar outputAccum >>= output+        loop+      else do+        -- Read remainder of output and accumulate it.+        nextChunk <- readChars pipe "" maxSize+        modifyMVar_ outputAccum (return . (++ nextChunk))++        -- We're done reading.+        putMVar finishedReading True++  liftIO $ forkIO loop++  result <- gfinally (goStmt stmt) $ do+    -- Execution is done.+    liftIO $ modifyMVar_ completed (const $ return True)++    -- Finalize evaluation context.+    forM_ postStmts goStmt++    -- Once context is finalized, reading can finish.+    -- Wait for reading to finish to that the output accumulator is+    -- completely filled.+    liftIO $ takeMVar finishedReading+    +  printedOutput <- liftIO $ readMVar outputAccum   return (printedOutput, result)  formatError :: ErrMsg -> String
IHaskell/Eval/Info.hs view
@@ -1,6 +1,4 @@ {-# LANGUAGE NoImplicitPrelude, OverloadedStrings #-}-{-# LANGUAGE OverloadedStrings #-}-{-# LANGUAGE NoImplicitPrelude #-} {- | Description : Inspect type and function information and documentation. -} module IHaskell.Eval.Info (
IHaskell/Eval/Parser.hs view
@@ -7,7 +7,6 @@     LineNumber,     ColumnNumber,     ErrMsg,-    splitAtLoc,     layoutChunks,     parseDirective,     getModuleName@@ -31,19 +30,7 @@ import SrcLoc import StringBuffer -import IHaskell.GHC.HaskellParser---- | A line number in an input string.-type LineNumber   = Int---- | A column number in an input string.-type ColumnNumber = Int---- | An error message string.-type ErrMsg = String---- | A location in an input string.-data StringLoc = Loc LineNumber ColumnNumber deriving (Show, Eq)+import Language.Haskell.GHC.Parser  -- | A block of code to be evaluated. -- Each block contains a single element - one declaration, statement,@@ -70,22 +57,14 @@   | GetHelp         -- ^ General help via ':?' or ':help'.   deriving (Show, Eq) --- | Output from running a parser.-data ParseOutput a-    = Failure ErrMsg StringLoc    -- ^ Parser failed with given error message and location.-    | Success a (String, String)  -- ^ Parser succeeded with an output.-    deriving (Eq, Show)                  -- Auxiliary strings say what part of the-                                  -- input string was used and what-                                  -- part is remaining.- -- | Parse a string into code blocks. parseString :: GhcMonad m => String -> m [CodeBlock] parseString codeString = do   -- Try to parse this as a single module.   flags <- getSessionDynFlags-  let output = runParser flags fullModule codeString+  let output = runParser flags parserModule codeString   case output of-    Success {} -> return [Module codeString]+    Parsed {} -> return [Module codeString]     Failure {} ->       -- Split input into chunks based on indentation.       let chunks = layoutChunks $ dropComments codeString in@@ -132,14 +111,11 @@         [] -> return $ bestError $ failures results          -- If one of the parsers succeeded-        (result, used, remaining):_ -> -          return $ if not . null . strip $ remaining-                   then ParseError (Loc 1 1) $ "Could not parse " ++ code-                   else result+        result:_ -> return result   where-    successes :: [ParseOutput a] -> [(a, String, String)]+    successes :: [ParseOutput a] -> [a]     successes [] = []-    successes (Success a (used, rem):rest) = (a, used, rem) : successes rest+    successes (Parsed a:rest) = a : successes rest     successes (_:rest) = successes rest      failures :: [ParseOutput a] -> [(ErrMsg, LineNumber, ColumnNumber)]@@ -154,7 +130,7 @@         compareLoc (_, line1, col1) (_, line2, col2) = compare line1 line2 <> compare col1 col2      statementToExpression :: DynFlags -> ParseOutput CodeBlock -> ParseOutput CodeBlock-    statementToExpression flags (Success (Statement stmt) strs) = Success result strs+    statementToExpression flags (Parsed (Statement stmt)) = Parsed result       where result = if isExpr flags stmt                      then Expression stmt                      else Statement stmt@@ -162,33 +138,28 @@      -- Check whether a string is a valid expression.     isExpr :: DynFlags -> String -> Bool-    isExpr flags str = case runParser flags fullExpression str of-      Failure {} -> False-      Success {} -> True+    isExpr flags str = case runParser flags parserExpression str of+      Parsed {} -> True+      _ -> False      tryParser :: String -> (String -> CodeBlock, String -> ParseOutput String) -> ParseOutput CodeBlock     tryParser string (blockType, parser) = case parser string of-      Success res (used, remaining) -> Success (blockType res) (used, remaining)+      Parsed res -> Parsed (blockType res)       Failure err loc -> Failure err loc      parsers :: DynFlags -> [(String -> CodeBlock, String -> ParseOutput String)]     parsers flags =-      [ (Import,        unparser toCode   partialImport)-      , (TypeSignature, unparser toCode   partialTypeSignature)-      , (Declaration,   unparser listCode partialDeclaration)-      , (Statement,     unparser toCode   partialStatement)+      [ (Import,        unparser parserImport)+      , (TypeSignature, unparser parserTypeSignature)+      , (Declaration,   unparser parserDeclaration)+      , (Statement,     unparser parserStatement)       ]       where-        toCode :: Outputable a => a -> String-        toCode = strip . showSDoc flags . ppr--        listCode :: Outputable a => OrdList a -> String-        listCode = joinLines . map toCode . fromOL--        unparser :: (a -> String) -> P a -> String -> ParseOutput String-        unparser postprocess parser code =+        unparser :: Parser a -> String -> ParseOutput String+        unparser parser code =           case runParser flags parser code of-            Success out strs -> Success (postprocess out) strs+            Parsed out -> Parsed code+            Partial out strs -> Partial code strs             Failure err loc -> Failure err loc  -- | Find consecutive declarations of the same function and join them into@@ -254,60 +225,13 @@       ] parseDirective _ _ = error "Directive must start with colon!" --- | Run a GHC parser on a string. Return success or failure with--- associated information for both.-runParser :: DynFlags -> P a -> String -> ParseOutput a-runParser flags parser str =-  -- Create an initial parser state.-  let filename = "<interactive>"-      location = mkRealSrcLoc (mkFastString filename) 1 1-      buffer = stringToStringBuffer str-      parseState = mkPState flags buffer location in-    -- Convert a GHC parser output into our own.-    toParseOut $ unP parser parseState-  where-    toParseOut :: ParseResult a -> ParseOutput a-    toParseOut (PFailed span@(RealSrcSpan realSpan) err) = -      let errMsg = printErrorBag $ unitBag $ mkPlainErrMsg flags span err-          line = srcLocLine $ realSrcSpanStart realSpan-          col = srcLocCol $ realSrcSpanStart realSpan-        in Failure errMsg $ Loc line col -    toParseOut (PFailed span err) = -      let errMsg = printErrorBag $ unitBag $ mkPlainErrMsg flags span err-        in Failure errMsg $ Loc 0 0--    toParseOut (POk parseState result) = -      let parseEnd = realSrcSpanStart $ last_loc parseState-          endLine = srcLocLine parseEnd-          endCol = srcLocCol parseEnd-          (before, after) = splitAtLoc endLine endCol str in-        Success result (before, after)--    -- Convert the bag of errors into an error string.-    printErrorBag bag = joinLines . map show $ bagToList bag---- | Split a string at a given line and column. The column is included in--- the second part of the split.-splitAtLoc :: LineNumber -> ColumnNumber -> String -> (String, String)-splitAtLoc line col string = -  if line > length (lines string)-  then (string, "")-  else (before, after)-  where-    (beforeLines, afterLines) = splitAt line $ lines string-    theLine = last beforeLines-    (beforeChars, afterChars) = splitAt (col - 1) theLine--    before = joinLines (init beforeLines) ++ '\n' : beforeChars-    after = joinLines $ afterChars : afterLines- -- | Split an input string into chunks based on indentation. -- A chunk is a line and all lines immediately following that are indented -- beyond the indentation of the first line. This parses Haskell layout -- rules properly, and allows using multiline expressions via indentation.  layoutChunks :: String -> [String]-layoutChunks string = filter (not . null . strip) $ layoutLines $ lines string+layoutChunks string = filter (not . null) $ map strip $ layoutLines $ lines string   where     layoutLines :: [String] -> [String]     -- Empty string case.  If there's no input, output is empty.@@ -329,6 +253,13 @@     -- Compute indent level of a string as number of leading spaces.     indentLevel :: String -> Int     indentLevel (' ':str) = 1 + indentLevel str++    -- Count a tab as two spaces.+    indentLevel ('\t':str) = 2 + indentLevel str+  +    -- Count empty lines as a large indent level, so they're always with the previous expression.+    indentLevel "" = 100000+     indentLevel _ = 0  -- Not the same as 'unlines', due to trailing \n@@ -356,10 +287,10 @@ getModuleName :: GhcMonad m => String -> m [String] getModuleName moduleSrc = do   flags <- getSessionDynFlags-  let output = runParser flags fullModule moduleSrc+  let output = runParser flags parserModule moduleSrc   case output of     Failure {} -> error "Module parsing failed."-    Success mod _ -> +    Parsed mod ->        case unLoc <$> hsmodName (unLoc mod) of         Nothing -> error "Module must have a name."         Just name -> return $ split "." $ moduleNameString name
− IHaskell/GHC/HaskellParser.hs
@@ -1,27207 +0,0 @@-{-# OPTIONS_GHC -w #-}-{-# LANGUAGE BangPatterns #-} -- required for versions of Happy before 1.18.6-{-# LANGUAGE ImplicitPrelude #-}-{-# OPTIONS -Wwarn -w #-}--- The above warning supression flag is a temporary kludge.--- While working on this module you are encouraged to remove it and fix--- any warnings in the module. See---     http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings--- for details--{-# OPTIONS_GHC -O0 -fno-ignore-interface-pragmas #-}-{--Careful optimisation of the parser: we don't want to throw everything-at it, because that takes too long and doesn't buy much, but we do want-to inline certain key external functions, so we instruct GHC not to-throw away inlinings as it would normally do in -O0 mode.--}--module IHaskell.GHC.HaskellParser (fullExpression, fullModule, partialTypeSignature, partialStatement, partialExpression, partialImport, partialDeclaration) where--import HsSyn-import RdrHsSyn-import HscTypes         ( IsBootInterface, WarningTxt(..) )-import Lexer-import RdrName-import TcEvidence       ( emptyTcEvBinds )-import TysPrim          ( liftedTypeKindTyConName, eqPrimTyCon )-import TysWiredIn       ( unitTyCon, unitDataCon, tupleTyCon, tupleCon, nilDataCon,-                          unboxedUnitTyCon, unboxedUnitDataCon,-                          listTyCon_RDR, parrTyCon_RDR, consDataCon_RDR, eqTyCon_RDR )-import Type             ( funTyCon )-import ForeignCall-import OccName          ( varName, dataName, tcClsName, tvName )-import DataCon          ( DataCon, dataConName )-import SrcLoc-import Module-import StaticFlags      ( opt_SccProfilingOn, opt_Hpc )-import Kind             ( Kind, liftedTypeKind, unliftedTypeKind, mkArrowKind )-import Class            ( FunDep )-import BasicTypes-import DynFlags-import OrdList-import HaddockUtils--import FastString-import Maybes           ( orElse )-import Outputable--import Control.Monad    ( unless, liftM )-import GHC.Exts-import Data.Char-import Control.Monad    ( mplus )---- parser produced by Happy Version 1.19.2--data HappyAbsSyn -	= HappyTerminal ((Located Token))-	| HappyErrorToken Int-	| HappyAbsSyn15 (LHsDecl RdrName)-	| HappyAbsSyn16 (Located (HsModule RdrName))-	| HappyAbsSyn17 (Located RdrName)-	| HappyAbsSyn19 (Maybe LHsDocString)-	| HappyAbsSyn20 (())-	| HappyAbsSyn21 (Maybe WarningTxt)-	| HappyAbsSyn22 (([LImportDecl RdrName], [LHsDecl RdrName]))-	| HappyAbsSyn25 ([LHsDecl RdrName])-	| HappyAbsSyn27 ([LImportDecl RdrName])-	| HappyAbsSyn29 (Maybe [LIE RdrName])-	| HappyAbsSyn30 ([LIE RdrName])-	| HappyAbsSyn33 (LIE RdrName)-	| HappyAbsSyn35 (Located ImpExpSubSpec)-	| HappyAbsSyn36 ([RdrName])-	| HappyAbsSyn40 (LImportDecl RdrName)-	| HappyAbsSyn41 (IsBootInterface)-	| HappyAbsSyn42 (Bool)-	| HappyAbsSyn43 (Maybe FastString)-	| HappyAbsSyn45 (Located (Maybe ModuleName))-	| HappyAbsSyn46 (Located (Maybe (Bool, [LIE RdrName])))-	| HappyAbsSyn47 (Located (Bool, [LIE RdrName]))-	| HappyAbsSyn48 (Int)-	| HappyAbsSyn49 (Located FixityDirection)-	| HappyAbsSyn50 (Located [Located RdrName])-	| HappyAbsSyn51 (OrdList (LHsDecl RdrName))-	| HappyAbsSyn53 (LTyClDecl RdrName)-	| HappyAbsSyn55 (LInstDecl RdrName)-	| HappyAbsSyn57 (LFamInstDecl RdrName)-	| HappyAbsSyn58 (Located NewOrData)-	| HappyAbsSyn59 (Located (Maybe (LHsKind RdrName)))-	| HappyAbsSyn60 (Located (Maybe (LHsContext RdrName), LHsType RdrName))-	| HappyAbsSyn61 (Maybe CType)-	| HappyAbsSyn62 (LDerivDecl RdrName)-	| HappyAbsSyn63 (Located (OrdList (LHsDecl RdrName)))-	| HappyAbsSyn73 (Located (HsLocalBinds RdrName))-	| HappyAbsSyn77 (Maybe Activation)-	| HappyAbsSyn78 (Activation)-	| HappyAbsSyn79 ([RuleBndr RdrName])-	| HappyAbsSyn81 (RuleBndr RdrName)-	| HappyAbsSyn86 (Located [FastString])-	| HappyAbsSyn87 (Located (OrdList FastString))-	| HappyAbsSyn90 (CCallConv)-	| HappyAbsSyn91 (Safety)-	| HappyAbsSyn92 (Located (Located FastString, Located RdrName, LHsType RdrName))-	| HappyAbsSyn93 (Maybe (LHsType RdrName))-	| HappyAbsSyn95 (LHsType RdrName)-	| HappyAbsSyn98 ([LHsType RdrName])-	| HappyAbsSyn100 (Located HsBang)-	| HappyAbsSyn103 (LHsContext RdrName)-	| HappyAbsSyn112 ([LHsTyVarBndr RdrName])-	| HappyAbsSyn113 (LHsTyVarBndr RdrName)-	| HappyAbsSyn114 (Located [Located (FunDep RdrName)])-	| HappyAbsSyn116 (Located (FunDep RdrName))-	| HappyAbsSyn117 (Located [RdrName])-	| HappyAbsSyn118 (LHsKind RdrName)-	| HappyAbsSyn122 ([LHsKind RdrName])-	| HappyAbsSyn123 (Located [LConDecl RdrName])-	| HappyAbsSyn125 ([LConDecl RdrName])-	| HappyAbsSyn128 (LConDecl RdrName)-	| HappyAbsSyn129 (Located [LHsTyVarBndr RdrName])-	| HappyAbsSyn130 (Located (Located RdrName, HsConDeclDetails RdrName))-	| HappyAbsSyn131 ([ConDeclField RdrName])-	| HappyAbsSyn134 (Located (Maybe [LHsType RdrName]))-	| HappyAbsSyn136 (LDocDecl)-	| HappyAbsSyn138 (Located (GRHSs RdrName))-	| HappyAbsSyn139 (Located [LGRHS RdrName])-	| HappyAbsSyn140 (LGRHS RdrName)-	| HappyAbsSyn142 (Located (HsQuasiQuote RdrName))-	| HappyAbsSyn143 (LHsExpr RdrName)-	| HappyAbsSyn147 (Located FastString)-	| HappyAbsSyn148 (Located (FastString,(Int,Int),(Int,Int)))-	| HappyAbsSyn153 ([LHsCmdTop RdrName])-	| HappyAbsSyn154 (LHsCmdTop RdrName)-	| HappyAbsSyn158 ([HsTupArg RdrName])-	| HappyAbsSyn162 (Located [LHsExpr RdrName])-	| HappyAbsSyn163 (Located [LStmt RdrName])-	| HappyAbsSyn164 (Located [[LStmt RdrName]])-	| HappyAbsSyn166 (Located ([LStmt RdrName] -> Stmt RdrName))-	| HappyAbsSyn170 (Located [LMatch RdrName])-	| HappyAbsSyn173 (LMatch RdrName)-	| HappyAbsSyn178 (LPat RdrName)-	| HappyAbsSyn180 ([LPat RdrName])-	| HappyAbsSyn184 (Maybe (LStmt RdrName))-	| HappyAbsSyn185 (LStmt RdrName)-	| HappyAbsSyn187 (([HsRecField RdrName (LHsExpr RdrName)], Bool))-	| HappyAbsSyn189 (HsRecField RdrName (LHsExpr RdrName))-	| HappyAbsSyn190 (Located [LIPBind RdrName])-	| HappyAbsSyn191 (LIPBind RdrName)-	| HappyAbsSyn192 (Located HsIPName)-	| HappyAbsSyn198 (Located DataCon)-	| HappyAbsSyn233 (Located HsLit)-	| HappyAbsSyn235 (Located ModuleName)-	| HappyAbsSyn237 (LHsDocString)-	| HappyAbsSyn239 (Located (String, HsDocString))-	| HappyAbsSyn240 (Located (Int, HsDocString))--{- to allow type-synonyms as our monads (likely- - with explicitly-specified bind and return)- - in Haskell98, it seems that with- - /type M a = .../, then /(HappyReduction M)/- - is not allowed.  But Happy is a- - code-generator that can just substitute it.-type HappyReduction m = -	   Int -	-> ((Located Token))-	-> HappyState ((Located Token)) (HappyStk HappyAbsSyn -> m HappyAbsSyn)-	-> [HappyState ((Located Token)) (HappyStk HappyAbsSyn -> m HappyAbsSyn)] -	-> HappyStk HappyAbsSyn -	-> m HappyAbsSyn--}--action_0,- action_1,- action_2,- action_3,- action_4,- action_5,- action_6,- action_7,- action_8,- action_9,- action_10,- action_11,- action_12,- action_13,- action_14,- action_15,- action_16,- action_17,- action_18,- action_19,- action_20,- action_21,- action_22,- action_23,- action_24,- action_25,- action_26,- action_27,- action_28,- action_29,- action_30,- action_31,- action_32,- action_33,- action_34,- action_35,- action_36,- action_37,- action_38,- action_39,- action_40,- action_41,- action_42,- action_43,- action_44,- action_45,- action_46,- action_47,- action_48,- action_49,- action_50,- action_51,- action_52,- action_53,- action_54,- action_55,- action_56,- action_57,- action_58,- action_59,- action_60,- action_61,- action_62,- action_63,- action_64,- action_65,- action_66,- action_67,- action_68,- action_69,- action_70,- action_71,- action_72,- action_73,- action_74,- action_75,- action_76,- action_77,- action_78,- action_79,- action_80,- action_81,- action_82,- action_83,- action_84,- action_85,- action_86,- action_87,- action_88,- action_89,- action_90,- action_91,- action_92,- action_93,- action_94,- action_95,- action_96,- action_97,- action_98,- action_99,- action_100,- action_101,- action_102,- action_103,- action_104,- action_105,- action_106,- action_107,- action_108,- action_109,- action_110,- action_111,- action_112,- action_113,- action_114,- action_115,- action_116,- action_117,- action_118,- action_119,- action_120,- action_121,- action_122,- action_123,- action_124,- action_125,- action_126,- action_127,- action_128,- action_129,- action_130,- action_131,- action_132,- action_133,- action_134,- action_135,- action_136,- action_137,- action_138,- action_139,- action_140,- action_141,- action_142,- action_143,- action_144,- action_145,- action_146,- action_147,- action_148,- action_149,- action_150,- action_151,- action_152,- action_153,- action_154,- action_155,- action_156,- action_157,- action_158,- action_159,- action_160,- action_161,- action_162,- action_163,- action_164,- action_165,- action_166,- action_167,- action_168,- action_169,- action_170,- action_171,- action_172,- action_173,- action_174,- action_175,- action_176,- action_177,- action_178,- action_179,- action_180,- action_181,- action_182,- action_183,- action_184,- action_185,- action_186,- action_187,- action_188,- action_189,- action_190,- action_191,- action_192,- action_193,- action_194,- action_195,- action_196,- action_197,- action_198,- action_199,- action_200,- action_201,- action_202,- action_203,- action_204,- action_205,- action_206,- action_207,- action_208,- action_209,- action_210,- action_211,- action_212,- action_213,- action_214,- action_215,- action_216,- action_217,- action_218,- action_219,- action_220,- action_221,- action_222,- action_223,- action_224,- action_225,- action_226,- action_227,- action_228,- action_229,- action_230,- action_231,- action_232,- action_233,- action_234,- action_235,- action_236,- action_237,- action_238,- action_239,- action_240,- action_241,- action_242,- action_243,- action_244,- action_245,- action_246,- action_247,- action_248,- action_249,- action_250,- action_251,- action_252,- action_253,- action_254,- action_255,- action_256,- action_257,- action_258,- action_259,- action_260,- action_261,- action_262,- action_263,- action_264,- action_265,- action_266,- action_267,- action_268,- action_269,- action_270,- action_271,- action_272,- action_273,- action_274,- action_275,- action_276,- action_277,- action_278,- action_279,- action_280,- action_281,- action_282,- action_283,- action_284,- action_285,- action_286,- action_287,- action_288,- action_289,- action_290,- action_291,- action_292,- action_293,- action_294,- action_295,- action_296,- action_297,- action_298,- action_299,- action_300,- action_301,- action_302,- action_303,- action_304,- action_305,- action_306,- action_307,- action_308,- action_309,- action_310,- action_311,- action_312,- action_313,- action_314,- action_315,- action_316,- action_317,- action_318,- action_319,- action_320,- action_321,- action_322,- action_323,- action_324,- action_325,- action_326,- action_327,- action_328,- action_329,- action_330,- action_331,- action_332,- action_333,- action_334,- action_335,- action_336,- action_337,- action_338,- action_339,- action_340,- action_341,- action_342,- action_343,- action_344,- action_345,- action_346,- action_347,- action_348,- action_349,- action_350,- action_351,- action_352,- action_353,- action_354,- action_355,- action_356,- action_357,- action_358,- action_359,- action_360,- action_361,- action_362,- action_363,- action_364,- action_365,- action_366,- action_367,- action_368,- action_369,- action_370,- action_371,- action_372,- action_373,- action_374,- action_375,- action_376,- action_377,- action_378,- action_379,- action_380,- action_381,- action_382,- action_383,- action_384,- action_385,- action_386,- action_387,- action_388,- action_389,- action_390,- action_391,- action_392,- action_393,- action_394,- action_395,- action_396,- action_397,- action_398,- action_399,- action_400,- action_401,- action_402,- action_403,- action_404,- action_405,- action_406,- action_407,- action_408,- action_409,- action_410,- action_411,- action_412,- action_413,- action_414,- action_415,- action_416,- action_417,- action_418,- action_419,- action_420,- action_421,- action_422,- action_423,- action_424,- action_425,- action_426,- action_427,- action_428,- action_429,- action_430,- action_431,- action_432,- action_433,- action_434,- action_435,- action_436,- action_437,- action_438,- action_439,- action_440,- action_441,- action_442,- action_443,- action_444,- action_445,- action_446,- action_447,- action_448,- action_449,- action_450,- action_451,- action_452,- action_453,- action_454,- action_455,- action_456,- action_457,- action_458,- action_459,- action_460,- action_461,- action_462,- action_463,- action_464,- action_465,- action_466,- action_467,- action_468,- action_469,- action_470,- action_471,- action_472,- action_473,- action_474,- action_475,- action_476,- action_477,- action_478,- action_479,- action_480,- action_481,- action_482,- action_483,- action_484,- action_485,- action_486,- action_487,- action_488,- action_489,- action_490,- action_491,- action_492,- action_493,- action_494,- action_495,- action_496,- action_497,- action_498,- action_499,- action_500,- action_501,- action_502,- action_503,- action_504,- action_505,- action_506,- action_507,- action_508,- action_509,- action_510,- action_511,- action_512,- action_513,- action_514,- action_515,- action_516,- action_517,- action_518,- action_519,- action_520,- action_521,- action_522,- action_523,- action_524,- action_525,- action_526,- action_527,- action_528,- action_529,- action_530,- action_531,- action_532,- action_533,- action_534,- action_535,- action_536,- action_537,- action_538,- action_539,- action_540,- action_541,- action_542,- action_543,- action_544,- action_545,- action_546,- action_547,- action_548,- action_549,- action_550,- action_551,- action_552,- action_553,- action_554,- action_555,- action_556,- action_557,- action_558,- action_559,- action_560,- action_561,- action_562,- action_563,- action_564,- action_565,- action_566,- action_567,- action_568,- action_569,- action_570,- action_571,- action_572,- action_573,- action_574,- action_575,- action_576,- action_577,- action_578,- action_579,- action_580,- action_581,- action_582,- action_583,- action_584,- action_585,- action_586,- action_587,- action_588,- action_589,- action_590,- action_591,- action_592,- action_593,- action_594,- action_595,- action_596,- action_597,- action_598,- action_599,- action_600,- action_601,- action_602,- action_603,- action_604,- action_605,- action_606,- action_607,- action_608,- action_609,- action_610,- action_611,- action_612,- action_613,- action_614,- action_615,- action_616,- action_617,- action_618,- action_619,- action_620,- action_621,- action_622,- action_623,- action_624,- action_625,- action_626,- action_627,- action_628,- action_629,- action_630,- action_631,- action_632,- action_633,- action_634,- action_635,- action_636,- action_637,- action_638,- action_639,- action_640,- action_641,- action_642,- action_643,- action_644,- action_645,- action_646,- action_647,- action_648,- action_649,- action_650,- action_651,- action_652,- action_653,- action_654,- action_655,- action_656,- action_657,- action_658,- action_659,- action_660,- action_661,- action_662,- action_663,- action_664,- action_665,- action_666,- action_667,- action_668,- action_669,- action_670,- action_671,- action_672,- action_673,- action_674,- action_675,- action_676,- action_677,- action_678,- action_679,- action_680,- action_681,- action_682,- action_683,- action_684,- action_685,- action_686,- action_687,- action_688,- action_689,- action_690,- action_691,- action_692,- action_693,- action_694,- action_695,- action_696,- action_697,- action_698,- action_699,- action_700,- action_701,- action_702,- action_703,- action_704,- action_705,- action_706,- action_707,- action_708,- action_709,- action_710,- action_711,- action_712,- action_713,- action_714,- action_715,- action_716,- action_717,- action_718,- action_719,- action_720,- action_721,- action_722,- action_723,- action_724,- action_725,- action_726,- action_727,- action_728,- action_729,- action_730,- action_731,- action_732,- action_733,- action_734,- action_735,- action_736,- action_737,- action_738,- action_739,- action_740,- action_741,- action_742,- action_743,- action_744,- action_745,- action_746,- action_747,- action_748,- action_749,- action_750,- action_751,- action_752,- action_753,- action_754,- action_755,- action_756,- action_757,- action_758,- action_759,- action_760,- action_761,- action_762,- action_763,- action_764,- action_765,- action_766,- action_767,- action_768,- action_769,- action_770,- action_771,- action_772,- action_773,- action_774,- action_775,- action_776,- action_777,- action_778,- action_779,- action_780,- action_781,- action_782,- action_783,- action_784,- action_785,- action_786,- action_787,- action_788,- action_789,- action_790,- action_791,- action_792,- action_793,- action_794,- action_795,- action_796,- action_797,- action_798,- action_799,- action_800,- action_801,- action_802,- action_803,- action_804,- action_805,- action_806,- action_807,- action_808,- action_809,- action_810,- action_811,- action_812,- action_813,- action_814,- action_815,- action_816,- action_817,- action_818,- action_819,- action_820,- action_821,- action_822,- action_823,- action_824,- action_825,- action_826,- action_827,- action_828,- action_829,- action_830,- action_831,- action_832,- action_833,- action_834,- action_835,- action_836,- action_837,- action_838,- action_839,- action_840,- action_841,- action_842,- action_843,- action_844,- action_845,- action_846,- action_847,- action_848,- action_849,- action_850,- action_851,- action_852,- action_853,- action_854,- action_855,- action_856,- action_857,- action_858,- action_859,- action_860,- action_861,- action_862,- action_863,- action_864,- action_865,- action_866,- action_867,- action_868,- action_869,- action_870,- action_871,- action_872,- action_873,- action_874,- action_875,- action_876,- action_877,- action_878,- action_879,- action_880,- action_881,- action_882,- action_883,- action_884,- action_885,- action_886,- action_887,- action_888,- action_889,- action_890,- action_891,- action_892,- action_893,- action_894,- action_895,- action_896,- action_897,- action_898,- action_899,- action_900,- action_901,- action_902,- action_903,- action_904,- action_905,- action_906,- action_907,- action_908,- action_909,- action_910,- action_911,- action_912,- action_913,- action_914,- action_915,- action_916,- action_917,- action_918,- action_919,- action_920,- action_921,- action_922,- action_923,- action_924,- action_925,- action_926,- action_927,- action_928,- action_929,- action_930,- action_931,- action_932,- action_933,- action_934,- action_935,- action_936,- action_937,- action_938,- action_939,- action_940,- action_941,- action_942,- action_943,- action_944,- action_945,- action_946,- action_947,- action_948,- action_949,- action_950,- action_951,- action_952,- action_953,- action_954,- action_955,- action_956,- action_957,- action_958,- action_959,- action_960,- action_961,- action_962,- action_963,- action_964,- action_965,- action_966,- action_967,- action_968,- action_969,- action_970,- action_971,- action_972,- action_973,- action_974,- action_975,- action_976,- action_977,- action_978,- action_979,- action_980,- action_981,- action_982,- action_983,- action_984,- action_985,- action_986,- action_987,- action_988,- action_989,- action_990,- action_991,- action_992,- action_993,- action_994,- action_995,- action_996,- action_997,- action_998,- action_999,- action_1000,- action_1001,- action_1002,- action_1003,- action_1004,- action_1005,- action_1006,- action_1007,- action_1008,- action_1009,- action_1010,- action_1011,- action_1012,- action_1013,- action_1014,- action_1015,- action_1016,- action_1017,- action_1018,- action_1019,- action_1020,- action_1021,- action_1022,- action_1023,- action_1024,- action_1025,- action_1026,- action_1027,- action_1028,- action_1029,- action_1030,- action_1031,- action_1032,- action_1033,- action_1034,- action_1035,- action_1036,- action_1037,- action_1038,- action_1039,- action_1040,- action_1041,- action_1042,- action_1043,- action_1044,- action_1045,- action_1046,- action_1047,- action_1048,- action_1049,- action_1050,- action_1051,- action_1052,- action_1053,- action_1054,- action_1055,- action_1056,- action_1057,- action_1058,- action_1059,- action_1060,- action_1061,- action_1062,- action_1063,- action_1064,- action_1065,- action_1066,- action_1067,- action_1068,- action_1069,- action_1070,- action_1071,- action_1072,- action_1073,- action_1074,- action_1075,- action_1076,- action_1077,- action_1078,- action_1079,- action_1080,- action_1081,- action_1082,- action_1083,- action_1084,- action_1085,- action_1086,- action_1087,- action_1088,- action_1089,- action_1090,- action_1091,- action_1092,- action_1093,- action_1094,- action_1095,- action_1096,- action_1097,- action_1098,- action_1099,- action_1100,- action_1101,- action_1102,- action_1103,- action_1104,- action_1105,- action_1106,- action_1107,- action_1108,- action_1109,- action_1110,- action_1111,- action_1112,- action_1113,- action_1114,- action_1115,- action_1116,- action_1117,- action_1118,- action_1119,- action_1120,- action_1121,- action_1122,- action_1123,- action_1124,- action_1125,- action_1126,- action_1127,- action_1128,- action_1129,- action_1130,- action_1131,- action_1132,- action_1133,- action_1134,- action_1135,- action_1136,- action_1137,- action_1138,- action_1139,- action_1140,- action_1141,- action_1142,- action_1143,- action_1144,- action_1145,- action_1146,- action_1147,- action_1148,- action_1149,- action_1150,- action_1151,- action_1152,- action_1153,- action_1154,- action_1155,- action_1156,- action_1157,- action_1158,- action_1159,- action_1160,- action_1161,- action_1162,- action_1163,- action_1164,- action_1165,- action_1166,- action_1167,- action_1168,- action_1169,- action_1170,- action_1171,- action_1172,- action_1173,- action_1174,- action_1175,- action_1176,- action_1177,- action_1178,- action_1179 :: () => Int -> ({-HappyReduction (P) = -}-	   Int -	-> ((Located Token))-	-> HappyState ((Located Token)) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn)-	-> [HappyState ((Located Token)) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn)] -	-> HappyStk HappyAbsSyn -	-> (P) HappyAbsSyn)--happyReduce_12,- happyReduce_13,- happyReduce_14,- happyReduce_15,- happyReduce_16,- happyReduce_17,- happyReduce_18,- happyReduce_19,- happyReduce_20,- happyReduce_21,- happyReduce_22,- happyReduce_23,- happyReduce_24,- happyReduce_25,- happyReduce_26,- happyReduce_27,- happyReduce_28,- happyReduce_29,- happyReduce_30,- happyReduce_31,- happyReduce_32,- happyReduce_33,- happyReduce_34,- happyReduce_35,- happyReduce_36,- happyReduce_37,- happyReduce_38,- happyReduce_39,- happyReduce_40,- happyReduce_41,- happyReduce_42,- happyReduce_43,- happyReduce_44,- happyReduce_45,- happyReduce_46,- happyReduce_47,- happyReduce_48,- happyReduce_49,- happyReduce_50,- happyReduce_51,- happyReduce_52,- happyReduce_53,- happyReduce_54,- happyReduce_55,- happyReduce_56,- happyReduce_57,- happyReduce_58,- happyReduce_59,- happyReduce_60,- happyReduce_61,- happyReduce_62,- happyReduce_63,- happyReduce_64,- happyReduce_65,- happyReduce_66,- happyReduce_67,- happyReduce_68,- happyReduce_69,- happyReduce_70,- happyReduce_71,- happyReduce_72,- happyReduce_73,- happyReduce_74,- happyReduce_75,- happyReduce_76,- happyReduce_77,- happyReduce_78,- happyReduce_79,- happyReduce_80,- happyReduce_81,- happyReduce_82,- happyReduce_83,- happyReduce_84,- happyReduce_85,- happyReduce_86,- happyReduce_87,- happyReduce_88,- happyReduce_89,- happyReduce_90,- happyReduce_91,- happyReduce_92,- happyReduce_93,- happyReduce_94,- happyReduce_95,- happyReduce_96,- happyReduce_97,- happyReduce_98,- happyReduce_99,- happyReduce_100,- happyReduce_101,- happyReduce_102,- happyReduce_103,- happyReduce_104,- happyReduce_105,- happyReduce_106,- happyReduce_107,- happyReduce_108,- happyReduce_109,- happyReduce_110,- happyReduce_111,- happyReduce_112,- happyReduce_113,- happyReduce_114,- happyReduce_115,- happyReduce_116,- happyReduce_117,- happyReduce_118,- happyReduce_119,- happyReduce_120,- happyReduce_121,- happyReduce_122,- happyReduce_123,- happyReduce_124,- happyReduce_125,- happyReduce_126,- happyReduce_127,- happyReduce_128,- happyReduce_129,- happyReduce_130,- happyReduce_131,- happyReduce_132,- happyReduce_133,- happyReduce_134,- happyReduce_135,- happyReduce_136,- happyReduce_137,- happyReduce_138,- happyReduce_139,- happyReduce_140,- happyReduce_141,- happyReduce_142,- happyReduce_143,- happyReduce_144,- happyReduce_145,- happyReduce_146,- happyReduce_147,- happyReduce_148,- happyReduce_149,- happyReduce_150,- happyReduce_151,- happyReduce_152,- happyReduce_153,- happyReduce_154,- happyReduce_155,- happyReduce_156,- happyReduce_157,- happyReduce_158,- happyReduce_159,- happyReduce_160,- happyReduce_161,- happyReduce_162,- happyReduce_163,- happyReduce_164,- happyReduce_165,- happyReduce_166,- happyReduce_167,- happyReduce_168,- happyReduce_169,- happyReduce_170,- happyReduce_171,- happyReduce_172,- happyReduce_173,- happyReduce_174,- happyReduce_175,- happyReduce_176,- happyReduce_177,- happyReduce_178,- happyReduce_179,- happyReduce_180,- happyReduce_181,- happyReduce_182,- happyReduce_183,- happyReduce_184,- happyReduce_185,- happyReduce_186,- happyReduce_187,- happyReduce_188,- happyReduce_189,- happyReduce_190,- happyReduce_191,- happyReduce_192,- happyReduce_193,- happyReduce_194,- happyReduce_195,- happyReduce_196,- happyReduce_197,- happyReduce_198,- happyReduce_199,- happyReduce_200,- happyReduce_201,- happyReduce_202,- happyReduce_203,- happyReduce_204,- happyReduce_205,- happyReduce_206,- happyReduce_207,- happyReduce_208,- happyReduce_209,- happyReduce_210,- happyReduce_211,- happyReduce_212,- happyReduce_213,- happyReduce_214,- happyReduce_215,- happyReduce_216,- happyReduce_217,- happyReduce_218,- happyReduce_219,- happyReduce_220,- happyReduce_221,- happyReduce_222,- happyReduce_223,- happyReduce_224,- happyReduce_225,- happyReduce_226,- happyReduce_227,- happyReduce_228,- happyReduce_229,- happyReduce_230,- happyReduce_231,- happyReduce_232,- happyReduce_233,- happyReduce_234,- happyReduce_235,- happyReduce_236,- happyReduce_237,- happyReduce_238,- happyReduce_239,- happyReduce_240,- happyReduce_241,- happyReduce_242,- happyReduce_243,- happyReduce_244,- happyReduce_245,- happyReduce_246,- happyReduce_247,- happyReduce_248,- happyReduce_249,- happyReduce_250,- happyReduce_251,- happyReduce_252,- happyReduce_253,- happyReduce_254,- happyReduce_255,- happyReduce_256,- happyReduce_257,- happyReduce_258,- happyReduce_259,- happyReduce_260,- happyReduce_261,- happyReduce_262,- happyReduce_263,- happyReduce_264,- happyReduce_265,- happyReduce_266,- happyReduce_267,- happyReduce_268,- happyReduce_269,- happyReduce_270,- happyReduce_271,- happyReduce_272,- happyReduce_273,- happyReduce_274,- happyReduce_275,- happyReduce_276,- happyReduce_277,- happyReduce_278,- happyReduce_279,- happyReduce_280,- happyReduce_281,- happyReduce_282,- happyReduce_283,- happyReduce_284,- happyReduce_285,- happyReduce_286,- happyReduce_287,- happyReduce_288,- happyReduce_289,- happyReduce_290,- happyReduce_291,- happyReduce_292,- happyReduce_293,- happyReduce_294,- happyReduce_295,- happyReduce_296,- happyReduce_297,- happyReduce_298,- happyReduce_299,- happyReduce_300,- happyReduce_301,- happyReduce_302,- happyReduce_303,- happyReduce_304,- happyReduce_305,- happyReduce_306,- happyReduce_307,- happyReduce_308,- happyReduce_309,- happyReduce_310,- happyReduce_311,- happyReduce_312,- happyReduce_313,- happyReduce_314,- happyReduce_315,- happyReduce_316,- happyReduce_317,- happyReduce_318,- happyReduce_319,- happyReduce_320,- happyReduce_321,- happyReduce_322,- happyReduce_323,- happyReduce_324,- happyReduce_325,- happyReduce_326,- happyReduce_327,- happyReduce_328,- happyReduce_329,- happyReduce_330,- happyReduce_331,- happyReduce_332,- happyReduce_333,- happyReduce_334,- happyReduce_335,- happyReduce_336,- happyReduce_337,- happyReduce_338,- happyReduce_339,- happyReduce_340,- happyReduce_341,- happyReduce_342,- happyReduce_343,- happyReduce_344,- happyReduce_345,- happyReduce_346,- happyReduce_347,- happyReduce_348,- happyReduce_349,- happyReduce_350,- happyReduce_351,- happyReduce_352,- happyReduce_353,- happyReduce_354,- happyReduce_355,- happyReduce_356,- happyReduce_357,- happyReduce_358,- happyReduce_359,- happyReduce_360,- happyReduce_361,- happyReduce_362,- happyReduce_363,- happyReduce_364,- happyReduce_365,- happyReduce_366,- happyReduce_367,- happyReduce_368,- happyReduce_369,- happyReduce_370,- happyReduce_371,- happyReduce_372,- happyReduce_373,- happyReduce_374,- happyReduce_375,- happyReduce_376,- happyReduce_377,- happyReduce_378,- happyReduce_379,- happyReduce_380,- happyReduce_381,- happyReduce_382,- happyReduce_383,- happyReduce_384,- happyReduce_385,- happyReduce_386,- happyReduce_387,- happyReduce_388,- happyReduce_389,- happyReduce_390,- happyReduce_391,- happyReduce_392,- happyReduce_393,- happyReduce_394,- happyReduce_395,- happyReduce_396,- happyReduce_397,- happyReduce_398,- happyReduce_399,- happyReduce_400,- happyReduce_401,- happyReduce_402,- happyReduce_403,- happyReduce_404,- happyReduce_405,- happyReduce_406,- happyReduce_407,- happyReduce_408,- happyReduce_409,- happyReduce_410,- happyReduce_411,- happyReduce_412,- happyReduce_413,- happyReduce_414,- happyReduce_415,- happyReduce_416,- happyReduce_417,- happyReduce_418,- happyReduce_419,- happyReduce_420,- happyReduce_421,- happyReduce_422,- happyReduce_423,- happyReduce_424,- happyReduce_425,- happyReduce_426,- happyReduce_427,- happyReduce_428,- happyReduce_429,- happyReduce_430,- happyReduce_431,- happyReduce_432,- happyReduce_433,- happyReduce_434,- happyReduce_435,- happyReduce_436,- happyReduce_437,- happyReduce_438,- happyReduce_439,- happyReduce_440,- happyReduce_441,- happyReduce_442,- happyReduce_443,- happyReduce_444,- happyReduce_445,- happyReduce_446,- happyReduce_447,- happyReduce_448,- happyReduce_449,- happyReduce_450,- happyReduce_451,- happyReduce_452,- happyReduce_453,- happyReduce_454,- happyReduce_455,- happyReduce_456,- happyReduce_457,- happyReduce_458,- happyReduce_459,- happyReduce_460,- happyReduce_461,- happyReduce_462,- happyReduce_463,- happyReduce_464,- happyReduce_465,- happyReduce_466,- happyReduce_467,- happyReduce_468,- happyReduce_469,- happyReduce_470,- happyReduce_471,- happyReduce_472,- happyReduce_473,- happyReduce_474,- happyReduce_475,- happyReduce_476,- happyReduce_477,- happyReduce_478,- happyReduce_479,- happyReduce_480,- happyReduce_481,- happyReduce_482,- happyReduce_483,- happyReduce_484,- happyReduce_485,- happyReduce_486,- happyReduce_487,- happyReduce_488,- happyReduce_489,- happyReduce_490,- happyReduce_491,- happyReduce_492,- happyReduce_493,- happyReduce_494,- happyReduce_495,- happyReduce_496,- happyReduce_497,- happyReduce_498,- happyReduce_499,- happyReduce_500,- happyReduce_501,- happyReduce_502,- happyReduce_503,- happyReduce_504,- happyReduce_505,- happyReduce_506,- happyReduce_507,- happyReduce_508,- happyReduce_509,- happyReduce_510,- happyReduce_511,- happyReduce_512,- happyReduce_513,- happyReduce_514,- happyReduce_515,- happyReduce_516,- happyReduce_517,- happyReduce_518,- happyReduce_519,- happyReduce_520,- happyReduce_521,- happyReduce_522,- happyReduce_523,- happyReduce_524,- happyReduce_525,- happyReduce_526,- happyReduce_527,- happyReduce_528,- happyReduce_529,- happyReduce_530,- happyReduce_531,- happyReduce_532,- happyReduce_533,- happyReduce_534,- happyReduce_535,- happyReduce_536,- happyReduce_537,- happyReduce_538,- happyReduce_539,- happyReduce_540,- happyReduce_541,- happyReduce_542,- happyReduce_543,- happyReduce_544,- happyReduce_545,- happyReduce_546,- happyReduce_547,- happyReduce_548,- happyReduce_549,- happyReduce_550,- happyReduce_551,- happyReduce_552,- happyReduce_553,- happyReduce_554,- happyReduce_555,- happyReduce_556,- happyReduce_557,- happyReduce_558,- happyReduce_559,- happyReduce_560,- happyReduce_561,- happyReduce_562,- happyReduce_563,- happyReduce_564,- happyReduce_565,- happyReduce_566,- happyReduce_567,- happyReduce_568,- happyReduce_569,- happyReduce_570,- happyReduce_571,- happyReduce_572,- happyReduce_573,- happyReduce_574,- happyReduce_575,- happyReduce_576,- happyReduce_577,- happyReduce_578,- happyReduce_579,- happyReduce_580,- happyReduce_581,- happyReduce_582,- happyReduce_583,- happyReduce_584,- happyReduce_585,- happyReduce_586,- happyReduce_587,- happyReduce_588,- happyReduce_589,- happyReduce_590,- happyReduce_591,- happyReduce_592,- happyReduce_593,- happyReduce_594,- happyReduce_595,- happyReduce_596,- happyReduce_597,- happyReduce_598,- happyReduce_599,- happyReduce_600,- happyReduce_601,- happyReduce_602,- happyReduce_603,- happyReduce_604,- happyReduce_605,- happyReduce_606,- happyReduce_607,- happyReduce_608,- happyReduce_609,- happyReduce_610,- happyReduce_611,- happyReduce_612,- happyReduce_613,- happyReduce_614,- happyReduce_615,- happyReduce_616,- happyReduce_617,- happyReduce_618,- happyReduce_619,- happyReduce_620,- happyReduce_621,- happyReduce_622,- happyReduce_623,- happyReduce_624,- happyReduce_625,- happyReduce_626,- happyReduce_627,- happyReduce_628,- happyReduce_629,- happyReduce_630,- happyReduce_631,- happyReduce_632,- happyReduce_633,- happyReduce_634,- happyReduce_635,- happyReduce_636,- happyReduce_637,- happyReduce_638,- happyReduce_639,- happyReduce_640,- happyReduce_641,- happyReduce_642,- happyReduce_643,- happyReduce_644,- happyReduce_645,- happyReduce_646,- happyReduce_647,- happyReduce_648,- happyReduce_649 :: () => ({-HappyReduction (P) = -}-	   Int -	-> ((Located Token))-	-> HappyState ((Located Token)) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn)-	-> [HappyState ((Located Token)) (HappyStk HappyAbsSyn -> (P) HappyAbsSyn)] -	-> HappyStk HappyAbsSyn -	-> (P) HappyAbsSyn)--action_0 (262) = happyReduce_22-action_0 (328) = happyShift action_231-action_0 (367) = happyShift action_111-action_0 (18) = happyGoto action_227-action_0 (19) = happyGoto action_228-action_0 (20) = happyGoto action_229-action_0 (23) = happyGoto action_230-action_0 (241) = happyGoto action_110-action_0 _ = happyReduce_23--action_1 (244) = happyShift action_36-action_1 (245) = happyShift action_37-action_1 (246) = happyShift action_38-action_1 (251) = happyShift action_39-action_1 (253) = happyShift action_40-action_1 (254) = happyShift action_41-action_1 (261) = happyShift action_156-action_1 (265) = happyShift action_46-action_1 (269) = happyShift action_47-action_1 (270) = happyShift action_48-action_1 (272) = happyShift action_49-action_1 (273) = happyShift action_50-action_1 (274) = happyShift action_51-action_1 (275) = happyShift action_52-action_1 (276) = happyShift action_53-action_1 (277) = happyShift action_54-action_1 (278) = happyShift action_55-action_1 (279) = happyShift action_56-action_1 (280) = happyShift action_57-action_1 (281) = happyShift action_58-action_1 (282) = happyShift action_59-action_1 (283) = happyShift action_60-action_1 (284) = happyShift action_61-action_1 (285) = happyShift action_157-action_1 (286) = happyShift action_62-action_1 (294) = happyShift action_66-action_1 (295) = happyShift action_67-action_1 (296) = happyShift action_68-action_1 (311) = happyShift action_69-action_1 (317) = happyShift action_70-action_1 (320) = happyShift action_71-action_1 (321) = happyShift action_158-action_1 (332) = happyShift action_72-action_1 (334) = happyShift action_73-action_1 (336) = happyShift action_107-action_1 (338) = happyShift action_75-action_1 (340) = happyShift action_76-action_1 (345) = happyShift action_77-action_1 (346) = happyShift action_78-action_1 (347) = happyShift action_79-action_1 (350) = happyShift action_80-action_1 (351) = happyShift action_81-action_1 (354) = happyShift action_82-action_1 (355) = happyShift action_83-action_1 (356) = happyShift action_84-action_1 (357) = happyShift action_85-action_1 (358) = happyShift action_86-action_1 (359) = happyShift action_87-action_1 (360) = happyShift action_88-action_1 (361) = happyShift action_89-action_1 (362) = happyShift action_90-action_1 (363) = happyShift action_91-action_1 (364) = happyShift action_92-action_1 (365) = happyShift action_93-action_1 (366) = happyShift action_94-action_1 (371) = happyShift action_95-action_1 (372) = happyShift action_96-action_1 (373) = happyShift action_97-action_1 (374) = happyShift action_98-action_1 (376) = happyShift action_99-action_1 (377) = happyShift action_100-action_1 (378) = happyShift action_101-action_1 (379) = happyShift action_102-action_1 (380) = happyShift action_103-action_1 (38) = happyGoto action_13-action_1 (142) = happyGoto action_16-action_1 (143) = happyGoto action_152-action_1 (144) = happyGoto action_105-action_1 (145) = happyGoto action_18-action_1 (147) = happyGoto action_19-action_1 (148) = happyGoto action_20-action_1 (149) = happyGoto action_21-action_1 (150) = happyGoto action_22-action_1 (151) = happyGoto action_23-action_1 (152) = happyGoto action_24-action_1 (178) = happyGoto action_153-action_1 (184) = happyGoto action_225-action_1 (185) = happyGoto action_226-action_1 (186) = happyGoto action_155-action_1 (192) = happyGoto action_25-action_1 (195) = happyGoto action_26-action_1 (198) = happyGoto action_27-action_1 (219) = happyGoto action_29-action_1 (220) = happyGoto action_30-action_1 (221) = happyGoto action_106-action_1 (227) = happyGoto action_32-action_1 (229) = happyGoto action_33-action_1 (230) = happyGoto action_34-action_1 (233) = happyGoto action_35-action_1 _ = happyReduce_497--action_2 (245) = happyShift action_37-action_2 (253) = happyShift action_40-action_2 (265) = happyShift action_46-action_2 (270) = happyShift action_48-action_2 (272) = happyShift action_49-action_2 (273) = happyShift action_50-action_2 (274) = happyShift action_51-action_2 (275) = happyShift action_52-action_2 (276) = happyShift action_53-action_2 (277) = happyShift action_54-action_2 (279) = happyShift action_56-action_2 (280) = happyShift action_57-action_2 (281) = happyShift action_58-action_2 (282) = happyShift action_59-action_2 (283) = happyShift action_60-action_2 (286) = happyShift action_62-action_2 (308) = happyShift action_212-action_2 (320) = happyShift action_213-action_2 (321) = happyShift action_214-action_2 (322) = happyShift action_215-action_2 (327) = happyShift action_216-action_2 (332) = happyShift action_217-action_2 (336) = happyShift action_218-action_2 (338) = happyShift action_219-action_2 (344) = happyShift action_220-action_2 (346) = happyShift action_78-action_2 (347) = happyShift action_79-action_2 (348) = happyShift action_221-action_2 (349) = happyShift action_222-action_2 (350) = happyShift action_80-action_2 (351) = happyShift action_81-action_2 (352) = happyShift action_223-action_2 (353) = happyShift action_224-action_2 (354) = happyShift action_82-action_2 (355) = happyShift action_83-action_2 (17) = happyGoto action_200-action_2 (195) = happyGoto action_201-action_2 (198) = happyGoto action_27-action_2 (200) = happyGoto action_202-action_2 (213) = happyGoto action_203-action_2 (219) = happyGoto action_204-action_2 (220) = happyGoto action_30-action_2 (221) = happyGoto action_106-action_2 (222) = happyGoto action_205-action_2 (224) = happyGoto action_206-action_2 (225) = happyGoto action_207-action_2 (226) = happyGoto action_208-action_2 (227) = happyGoto action_32-action_2 (228) = happyGoto action_209-action_2 (229) = happyGoto action_33-action_2 (230) = happyGoto action_34-action_2 (231) = happyGoto action_210-action_2 (232) = happyGoto action_211-action_2 _ = happyFail--action_3 (245) = happyShift action_37-action_3 (253) = happyShift action_40-action_3 (265) = happyShift action_46-action_3 (270) = happyShift action_179-action_3 (272) = happyShift action_49-action_3 (273) = happyShift action_50-action_3 (274) = happyShift action_51-action_3 (275) = happyShift action_180-action_3 (276) = happyShift action_181-action_3 (277) = happyShift action_182-action_3 (280) = happyShift action_57-action_3 (281) = happyShift action_58-action_3 (282) = happyShift action_59-action_3 (283) = happyShift action_60-action_3 (286) = happyShift action_62-action_3 (299) = happyShift action_183-action_3 (300) = happyShift action_184-action_3 (321) = happyShift action_185-action_3 (328) = happyShift action_186-action_3 (332) = happyShift action_187-action_3 (334) = happyShift action_188-action_3 (336) = happyShift action_189-action_3 (338) = happyShift action_190-action_3 (345) = happyShift action_191-action_3 (346) = happyShift action_192-action_3 (347) = happyShift action_193-action_3 (351) = happyShift action_194-action_3 (355) = happyShift action_195-action_3 (356) = happyShift action_84-action_3 (358) = happyShift action_196-action_3 (359) = happyShift action_197-action_3 (376) = happyShift action_198-action_3 (377) = happyShift action_199-action_3 (379) = happyShift action_102-action_3 (380) = happyShift action_103-action_3 (100) = happyGoto action_164-action_3 (101) = happyGoto action_165-action_3 (103) = happyGoto action_166-action_3 (104) = happyGoto action_167-action_3 (106) = happyGoto action_168-action_3 (107) = happyGoto action_169-action_3 (142) = happyGoto action_170-action_3 (192) = happyGoto action_171-action_3 (202) = happyGoto action_172-action_3 (203) = happyGoto action_173-action_3 (205) = happyGoto action_174-action_3 (206) = happyGoto action_175-action_3 (215) = happyGoto action_176-action_3 (217) = happyGoto action_177-action_3 (227) = happyGoto action_178-action_3 _ = happyFail--action_4 (262) = happyReduce_22-action_4 (328) = happyShift action_163-action_4 (367) = happyShift action_111-action_4 (19) = happyGoto action_159-action_4 (20) = happyGoto action_160-action_4 (26) = happyGoto action_161-action_4 (28) = happyGoto action_162-action_4 (241) = happyGoto action_110-action_4 _ = happyReduce_23--action_5 (244) = happyShift action_36-action_5 (245) = happyShift action_37-action_5 (246) = happyShift action_38-action_5 (251) = happyShift action_39-action_5 (253) = happyShift action_40-action_5 (254) = happyShift action_41-action_5 (261) = happyShift action_156-action_5 (265) = happyShift action_46-action_5 (269) = happyShift action_47-action_5 (270) = happyShift action_48-action_5 (272) = happyShift action_49-action_5 (273) = happyShift action_50-action_5 (274) = happyShift action_51-action_5 (275) = happyShift action_52-action_5 (276) = happyShift action_53-action_5 (277) = happyShift action_54-action_5 (278) = happyShift action_55-action_5 (279) = happyShift action_56-action_5 (280) = happyShift action_57-action_5 (281) = happyShift action_58-action_5 (282) = happyShift action_59-action_5 (283) = happyShift action_60-action_5 (284) = happyShift action_61-action_5 (285) = happyShift action_157-action_5 (286) = happyShift action_62-action_5 (294) = happyShift action_66-action_5 (295) = happyShift action_67-action_5 (296) = happyShift action_68-action_5 (311) = happyShift action_69-action_5 (317) = happyShift action_70-action_5 (320) = happyShift action_71-action_5 (321) = happyShift action_158-action_5 (332) = happyShift action_72-action_5 (334) = happyShift action_73-action_5 (336) = happyShift action_107-action_5 (338) = happyShift action_75-action_5 (340) = happyShift action_76-action_5 (345) = happyShift action_77-action_5 (346) = happyShift action_78-action_5 (347) = happyShift action_79-action_5 (350) = happyShift action_80-action_5 (351) = happyShift action_81-action_5 (354) = happyShift action_82-action_5 (355) = happyShift action_83-action_5 (356) = happyShift action_84-action_5 (357) = happyShift action_85-action_5 (358) = happyShift action_86-action_5 (359) = happyShift action_87-action_5 (360) = happyShift action_88-action_5 (361) = happyShift action_89-action_5 (362) = happyShift action_90-action_5 (363) = happyShift action_91-action_5 (364) = happyShift action_92-action_5 (365) = happyShift action_93-action_5 (366) = happyShift action_94-action_5 (371) = happyShift action_95-action_5 (372) = happyShift action_96-action_5 (373) = happyShift action_97-action_5 (374) = happyShift action_98-action_5 (376) = happyShift action_99-action_5 (377) = happyShift action_100-action_5 (378) = happyShift action_101-action_5 (379) = happyShift action_102-action_5 (380) = happyShift action_103-action_5 (38) = happyGoto action_13-action_5 (142) = happyGoto action_16-action_5 (143) = happyGoto action_152-action_5 (144) = happyGoto action_105-action_5 (145) = happyGoto action_18-action_5 (147) = happyGoto action_19-action_5 (148) = happyGoto action_20-action_5 (149) = happyGoto action_21-action_5 (150) = happyGoto action_22-action_5 (151) = happyGoto action_23-action_5 (152) = happyGoto action_24-action_5 (178) = happyGoto action_153-action_5 (185) = happyGoto action_154-action_5 (186) = happyGoto action_155-action_5 (192) = happyGoto action_25-action_5 (195) = happyGoto action_26-action_5 (198) = happyGoto action_27-action_5 (219) = happyGoto action_29-action_5 (220) = happyGoto action_30-action_5 (221) = happyGoto action_106-action_5 (227) = happyGoto action_32-action_5 (229) = happyGoto action_33-action_5 (230) = happyGoto action_34-action_5 (233) = happyGoto action_35-action_5 _ = happyFail--action_6 (255) = happyShift action_151-action_6 (40) = happyGoto action_150-action_6 _ = happyFail--action_7 (244) = happyShift action_36-action_7 (245) = happyShift action_37-action_7 (246) = happyShift action_38-action_7 (247) = happyShift action_130-action_7 (248) = happyShift action_131-action_7 (249) = happyShift action_132-action_7 (250) = happyShift action_133-action_7 (251) = happyShift action_39-action_7 (253) = happyShift action_40-action_7 (254) = happyShift action_41-action_7 (257) = happyShift action_42-action_7 (258) = happyShift action_43-action_7 (259) = happyShift action_44-action_7 (260) = happyShift action_134-action_7 (261) = happyShift action_45-action_7 (263) = happyShift action_135-action_7 (265) = happyShift action_46-action_7 (267) = happyShift action_136-action_7 (269) = happyShift action_47-action_7 (270) = happyShift action_48-action_7 (271) = happyShift action_137-action_7 (272) = happyShift action_49-action_7 (273) = happyShift action_50-action_7 (274) = happyShift action_51-action_7 (275) = happyShift action_52-action_7 (276) = happyShift action_53-action_7 (277) = happyShift action_54-action_7 (278) = happyShift action_55-action_7 (279) = happyShift action_56-action_7 (280) = happyShift action_57-action_7 (281) = happyShift action_58-action_7 (282) = happyShift action_59-action_7 (283) = happyShift action_60-action_7 (284) = happyShift action_61-action_7 (286) = happyShift action_62-action_7 (289) = happyShift action_63-action_7 (290) = happyShift action_64-action_7 (291) = happyShift action_65-action_7 (293) = happyShift action_138-action_7 (294) = happyShift action_66-action_7 (295) = happyShift action_67-action_7 (296) = happyShift action_68-action_7 (297) = happyShift action_139-action_7 (298) = happyShift action_140-action_7 (301) = happyShift action_141-action_7 (302) = happyShift action_142-action_7 (303) = happyShift action_143-action_7 (304) = happyShift action_144-action_7 (311) = happyShift action_69-action_7 (317) = happyShift action_70-action_7 (320) = happyShift action_71-action_7 (321) = happyShift action_145-action_7 (332) = happyShift action_72-action_7 (334) = happyShift action_73-action_7 (336) = happyShift action_74-action_7 (338) = happyShift action_75-action_7 (340) = happyShift action_76-action_7 (345) = happyShift action_77-action_7 (346) = happyShift action_78-action_7 (347) = happyShift action_79-action_7 (350) = happyShift action_80-action_7 (351) = happyShift action_81-action_7 (354) = happyShift action_82-action_7 (355) = happyShift action_83-action_7 (356) = happyShift action_84-action_7 (357) = happyShift action_85-action_7 (358) = happyShift action_86-action_7 (359) = happyShift action_87-action_7 (360) = happyShift action_88-action_7 (361) = happyShift action_89-action_7 (362) = happyShift action_90-action_7 (363) = happyShift action_91-action_7 (364) = happyShift action_92-action_7 (365) = happyShift action_93-action_7 (366) = happyShift action_94-action_7 (367) = happyShift action_146-action_7 (368) = happyShift action_147-action_7 (369) = happyShift action_148-action_7 (370) = happyShift action_149-action_7 (371) = happyShift action_95-action_7 (372) = happyShift action_96-action_7 (373) = happyShift action_97-action_7 (374) = happyShift action_98-action_7 (376) = happyShift action_99-action_7 (377) = happyShift action_100-action_7 (378) = happyShift action_101-action_7 (379) = happyShift action_102-action_7 (380) = happyShift action_103-action_7 (38) = happyGoto action_13-action_7 (49) = happyGoto action_14-action_7 (52) = happyGoto action_114-action_7 (53) = happyGoto action_115-action_7 (54) = happyGoto action_116-action_7 (55) = happyGoto action_117-action_7 (58) = happyGoto action_118-action_7 (62) = happyGoto action_119-action_7 (88) = happyGoto action_120-action_7 (135) = happyGoto action_121-action_7 (136) = happyGoto action_122-action_7 (137) = happyGoto action_123-action_7 (141) = happyGoto action_124-action_7 (142) = happyGoto action_16-action_7 (144) = happyGoto action_125-action_7 (145) = happyGoto action_18-action_7 (147) = happyGoto action_19-action_7 (148) = happyGoto action_20-action_7 (149) = happyGoto action_21-action_7 (150) = happyGoto action_22-action_7 (151) = happyGoto action_23-action_7 (152) = happyGoto action_24-action_7 (192) = happyGoto action_25-action_7 (195) = happyGoto action_26-action_7 (198) = happyGoto action_27-action_7 (218) = happyGoto action_28-action_7 (219) = happyGoto action_29-action_7 (220) = happyGoto action_30-action_7 (221) = happyGoto action_31-action_7 (227) = happyGoto action_32-action_7 (229) = happyGoto action_33-action_7 (230) = happyGoto action_34-action_7 (233) = happyGoto action_35-action_7 (237) = happyGoto action_126-action_7 (238) = happyGoto action_127-action_7 (239) = happyGoto action_128-action_7 (240) = happyGoto action_129-action_7 _ = happyFail--action_8 (244) = happyShift action_36-action_8 (245) = happyShift action_37-action_8 (246) = happyShift action_38-action_8 (251) = happyShift action_39-action_8 (253) = happyShift action_40-action_8 (254) = happyShift action_41-action_8 (261) = happyShift action_45-action_8 (265) = happyShift action_46-action_8 (269) = happyShift action_47-action_8 (270) = happyShift action_48-action_8 (272) = happyShift action_49-action_8 (273) = happyShift action_50-action_8 (274) = happyShift action_51-action_8 (275) = happyShift action_52-action_8 (276) = happyShift action_53-action_8 (277) = happyShift action_54-action_8 (278) = happyShift action_55-action_8 (279) = happyShift action_56-action_8 (280) = happyShift action_57-action_8 (281) = happyShift action_58-action_8 (282) = happyShift action_59-action_8 (283) = happyShift action_60-action_8 (284) = happyShift action_61-action_8 (286) = happyShift action_62-action_8 (294) = happyShift action_66-action_8 (295) = happyShift action_67-action_8 (296) = happyShift action_68-action_8 (311) = happyShift action_69-action_8 (317) = happyShift action_70-action_8 (320) = happyShift action_71-action_8 (332) = happyShift action_72-action_8 (334) = happyShift action_73-action_8 (336) = happyShift action_107-action_8 (338) = happyShift action_75-action_8 (340) = happyShift action_76-action_8 (345) = happyShift action_77-action_8 (346) = happyShift action_78-action_8 (347) = happyShift action_79-action_8 (350) = happyShift action_80-action_8 (351) = happyShift action_81-action_8 (354) = happyShift action_82-action_8 (355) = happyShift action_83-action_8 (356) = happyShift action_84-action_8 (357) = happyShift action_85-action_8 (358) = happyShift action_86-action_8 (359) = happyShift action_87-action_8 (360) = happyShift action_88-action_8 (361) = happyShift action_89-action_8 (362) = happyShift action_90-action_8 (363) = happyShift action_91-action_8 (364) = happyShift action_92-action_8 (365) = happyShift action_93-action_8 (366) = happyShift action_94-action_8 (371) = happyShift action_95-action_8 (372) = happyShift action_96-action_8 (373) = happyShift action_97-action_8 (374) = happyShift action_98-action_8 (376) = happyShift action_99-action_8 (377) = happyShift action_100-action_8 (378) = happyShift action_101-action_8 (379) = happyShift action_102-action_8 (380) = happyShift action_103-action_8 (38) = happyGoto action_13-action_8 (142) = happyGoto action_16-action_8 (143) = happyGoto action_113-action_8 (144) = happyGoto action_105-action_8 (145) = happyGoto action_18-action_8 (147) = happyGoto action_19-action_8 (148) = happyGoto action_20-action_8 (149) = happyGoto action_21-action_8 (150) = happyGoto action_22-action_8 (151) = happyGoto action_23-action_8 (152) = happyGoto action_24-action_8 (192) = happyGoto action_25-action_8 (195) = happyGoto action_26-action_8 (198) = happyGoto action_27-action_8 (219) = happyGoto action_29-action_8 (220) = happyGoto action_30-action_8 (221) = happyGoto action_106-action_8 (227) = happyGoto action_32-action_8 (229) = happyGoto action_33-action_8 (230) = happyGoto action_34-action_8 (233) = happyGoto action_35-action_8 _ = happyFail--action_9 (244) = happyShift action_36-action_9 (245) = happyShift action_37-action_9 (246) = happyShift action_38-action_9 (251) = happyShift action_39-action_9 (253) = happyShift action_40-action_9 (254) = happyShift action_41-action_9 (257) = happyShift action_42-action_9 (258) = happyShift action_43-action_9 (259) = happyShift action_44-action_9 (261) = happyShift action_45-action_9 (265) = happyShift action_46-action_9 (269) = happyShift action_47-action_9 (270) = happyShift action_48-action_9 (272) = happyShift action_49-action_9 (273) = happyShift action_50-action_9 (274) = happyShift action_51-action_9 (275) = happyShift action_52-action_9 (276) = happyShift action_53-action_9 (277) = happyShift action_54-action_9 (278) = happyShift action_55-action_9 (279) = happyShift action_56-action_9 (280) = happyShift action_57-action_9 (281) = happyShift action_58-action_9 (282) = happyShift action_59-action_9 (283) = happyShift action_60-action_9 (284) = happyShift action_61-action_9 (286) = happyShift action_62-action_9 (289) = happyShift action_63-action_9 (290) = happyShift action_64-action_9 (291) = happyShift action_65-action_9 (294) = happyShift action_66-action_9 (295) = happyShift action_67-action_9 (296) = happyShift action_68-action_9 (311) = happyShift action_69-action_9 (317) = happyShift action_70-action_9 (320) = happyShift action_71-action_9 (332) = happyShift action_72-action_9 (334) = happyShift action_73-action_9 (336) = happyShift action_74-action_9 (338) = happyShift action_75-action_9 (340) = happyShift action_76-action_9 (345) = happyShift action_77-action_9 (346) = happyShift action_78-action_9 (347) = happyShift action_79-action_9 (350) = happyShift action_80-action_9 (351) = happyShift action_81-action_9 (354) = happyShift action_82-action_9 (355) = happyShift action_83-action_9 (356) = happyShift action_84-action_9 (357) = happyShift action_85-action_9 (358) = happyShift action_86-action_9 (359) = happyShift action_87-action_9 (360) = happyShift action_88-action_9 (361) = happyShift action_89-action_9 (362) = happyShift action_90-action_9 (363) = happyShift action_91-action_9 (364) = happyShift action_92-action_9 (365) = happyShift action_93-action_9 (366) = happyShift action_94-action_9 (371) = happyShift action_95-action_9 (372) = happyShift action_96-action_9 (373) = happyShift action_97-action_9 (374) = happyShift action_98-action_9 (376) = happyShift action_99-action_9 (377) = happyShift action_100-action_9 (378) = happyShift action_101-action_9 (379) = happyShift action_102-action_9 (380) = happyShift action_103-action_9 (15) = happyGoto action_112-action_9 (38) = happyGoto action_13-action_9 (49) = happyGoto action_14-action_9 (141) = happyGoto action_15-action_9 (142) = happyGoto action_16-action_9 (144) = happyGoto action_17-action_9 (145) = happyGoto action_18-action_9 (147) = happyGoto action_19-action_9 (148) = happyGoto action_20-action_9 (149) = happyGoto action_21-action_9 (150) = happyGoto action_22-action_9 (151) = happyGoto action_23-action_9 (152) = happyGoto action_24-action_9 (192) = happyGoto action_25-action_9 (195) = happyGoto action_26-action_9 (198) = happyGoto action_27-action_9 (218) = happyGoto action_28-action_9 (219) = happyGoto action_29-action_9 (220) = happyGoto action_30-action_9 (221) = happyGoto action_31-action_9 (227) = happyGoto action_32-action_9 (229) = happyGoto action_33-action_9 (230) = happyGoto action_34-action_9 (233) = happyGoto action_35-action_9 _ = happyFail--action_10 (367) = happyShift action_111-action_10 (16) = happyGoto action_108-action_10 (19) = happyGoto action_109-action_10 (241) = happyGoto action_110-action_10 _ = happyReduce_22--action_11 (244) = happyShift action_36-action_11 (245) = happyShift action_37-action_11 (246) = happyShift action_38-action_11 (251) = happyShift action_39-action_11 (253) = happyShift action_40-action_11 (254) = happyShift action_41-action_11 (261) = happyShift action_45-action_11 (265) = happyShift action_46-action_11 (269) = happyShift action_47-action_11 (270) = happyShift action_48-action_11 (272) = happyShift action_49-action_11 (273) = happyShift action_50-action_11 (274) = happyShift action_51-action_11 (275) = happyShift action_52-action_11 (276) = happyShift action_53-action_11 (277) = happyShift action_54-action_11 (278) = happyShift action_55-action_11 (279) = happyShift action_56-action_11 (280) = happyShift action_57-action_11 (281) = happyShift action_58-action_11 (282) = happyShift action_59-action_11 (283) = happyShift action_60-action_11 (284) = happyShift action_61-action_11 (286) = happyShift action_62-action_11 (294) = happyShift action_66-action_11 (295) = happyShift action_67-action_11 (296) = happyShift action_68-action_11 (311) = happyShift action_69-action_11 (317) = happyShift action_70-action_11 (320) = happyShift action_71-action_11 (332) = happyShift action_72-action_11 (334) = happyShift action_73-action_11 (336) = happyShift action_107-action_11 (338) = happyShift action_75-action_11 (340) = happyShift action_76-action_11 (345) = happyShift action_77-action_11 (346) = happyShift action_78-action_11 (347) = happyShift action_79-action_11 (350) = happyShift action_80-action_11 (351) = happyShift action_81-action_11 (354) = happyShift action_82-action_11 (355) = happyShift action_83-action_11 (356) = happyShift action_84-action_11 (357) = happyShift action_85-action_11 (358) = happyShift action_86-action_11 (359) = happyShift action_87-action_11 (360) = happyShift action_88-action_11 (361) = happyShift action_89-action_11 (362) = happyShift action_90-action_11 (363) = happyShift action_91-action_11 (364) = happyShift action_92-action_11 (365) = happyShift action_93-action_11 (366) = happyShift action_94-action_11 (371) = happyShift action_95-action_11 (372) = happyShift action_96-action_11 (373) = happyShift action_97-action_11 (374) = happyShift action_98-action_11 (376) = happyShift action_99-action_11 (377) = happyShift action_100-action_11 (378) = happyShift action_101-action_11 (379) = happyShift action_102-action_11 (380) = happyShift action_103-action_11 (38) = happyGoto action_13-action_11 (142) = happyGoto action_16-action_11 (143) = happyGoto action_104-action_11 (144) = happyGoto action_105-action_11 (145) = happyGoto action_18-action_11 (147) = happyGoto action_19-action_11 (148) = happyGoto action_20-action_11 (149) = happyGoto action_21-action_11 (150) = happyGoto action_22-action_11 (151) = happyGoto action_23-action_11 (152) = happyGoto action_24-action_11 (192) = happyGoto action_25-action_11 (195) = happyGoto action_26-action_11 (198) = happyGoto action_27-action_11 (219) = happyGoto action_29-action_11 (220) = happyGoto action_30-action_11 (221) = happyGoto action_106-action_11 (227) = happyGoto action_32-action_11 (229) = happyGoto action_33-action_11 (230) = happyGoto action_34-action_11 (233) = happyGoto action_35-action_11 _ = happyFail--action_12 (244) = happyShift action_36-action_12 (245) = happyShift action_37-action_12 (246) = happyShift action_38-action_12 (251) = happyShift action_39-action_12 (253) = happyShift action_40-action_12 (254) = happyShift action_41-action_12 (257) = happyShift action_42-action_12 (258) = happyShift action_43-action_12 (259) = happyShift action_44-action_12 (261) = happyShift action_45-action_12 (265) = happyShift action_46-action_12 (269) = happyShift action_47-action_12 (270) = happyShift action_48-action_12 (272) = happyShift action_49-action_12 (273) = happyShift action_50-action_12 (274) = happyShift action_51-action_12 (275) = happyShift action_52-action_12 (276) = happyShift action_53-action_12 (277) = happyShift action_54-action_12 (278) = happyShift action_55-action_12 (279) = happyShift action_56-action_12 (280) = happyShift action_57-action_12 (281) = happyShift action_58-action_12 (282) = happyShift action_59-action_12 (283) = happyShift action_60-action_12 (284) = happyShift action_61-action_12 (286) = happyShift action_62-action_12 (289) = happyShift action_63-action_12 (290) = happyShift action_64-action_12 (291) = happyShift action_65-action_12 (294) = happyShift action_66-action_12 (295) = happyShift action_67-action_12 (296) = happyShift action_68-action_12 (311) = happyShift action_69-action_12 (317) = happyShift action_70-action_12 (320) = happyShift action_71-action_12 (332) = happyShift action_72-action_12 (334) = happyShift action_73-action_12 (336) = happyShift action_74-action_12 (338) = happyShift action_75-action_12 (340) = happyShift action_76-action_12 (345) = happyShift action_77-action_12 (346) = happyShift action_78-action_12 (347) = happyShift action_79-action_12 (350) = happyShift action_80-action_12 (351) = happyShift action_81-action_12 (354) = happyShift action_82-action_12 (355) = happyShift action_83-action_12 (356) = happyShift action_84-action_12 (357) = happyShift action_85-action_12 (358) = happyShift action_86-action_12 (359) = happyShift action_87-action_12 (360) = happyShift action_88-action_12 (361) = happyShift action_89-action_12 (362) = happyShift action_90-action_12 (363) = happyShift action_91-action_12 (364) = happyShift action_92-action_12 (365) = happyShift action_93-action_12 (366) = happyShift action_94-action_12 (371) = happyShift action_95-action_12 (372) = happyShift action_96-action_12 (373) = happyShift action_97-action_12 (374) = happyShift action_98-action_12 (376) = happyShift action_99-action_12 (377) = happyShift action_100-action_12 (378) = happyShift action_101-action_12 (379) = happyShift action_102-action_12 (380) = happyShift action_103-action_12 (38) = happyGoto action_13-action_12 (49) = happyGoto action_14-action_12 (141) = happyGoto action_15-action_12 (142) = happyGoto action_16-action_12 (144) = happyGoto action_17-action_12 (145) = happyGoto action_18-action_12 (147) = happyGoto action_19-action_12 (148) = happyGoto action_20-action_12 (149) = happyGoto action_21-action_12 (150) = happyGoto action_22-action_12 (151) = happyGoto action_23-action_12 (152) = happyGoto action_24-action_12 (192) = happyGoto action_25-action_12 (195) = happyGoto action_26-action_12 (198) = happyGoto action_27-action_12 (218) = happyGoto action_28-action_12 (219) = happyGoto action_29-action_12 (220) = happyGoto action_30-action_12 (221) = happyGoto action_31-action_12 (227) = happyGoto action_32-action_12 (229) = happyGoto action_33-action_12 (230) = happyGoto action_34-action_12 (233) = happyGoto action_35-action_12 _ = happyFail--action_13 _ = happyReduce_400--action_14 (359) = happyShift action_451-action_14 (48) = happyGoto action_450-action_14 _ = happyReduce_84--action_15 _ = happyReduce_12--action_16 _ = happyReduce_421--action_17 (308) = happyShift action_212-action_17 (309) = happyShift action_449-action_17 (320) = happyShift action_213-action_17 (321) = happyShift action_214-action_17 (322) = happyShift action_215-action_17 (327) = happyShift action_216-action_17 (344) = happyShift action_220-action_17 (348) = happyShift action_221-action_17 (349) = happyShift action_222-action_17 (352) = happyShift action_223-action_17 (353) = happyShift action_224-action_17 (200) = happyGoto action_359-action_17 (211) = happyGoto action_360-action_17 (213) = happyGoto action_361-action_17 (222) = happyGoto action_205-action_17 (224) = happyGoto action_206-action_17 (225) = happyGoto action_207-action_17 (226) = happyGoto action_208-action_17 (228) = happyGoto action_209-action_17 (231) = happyGoto action_210-action_17 (232) = happyGoto action_211-action_17 _ = happyFail--action_18 _ = happyReduce_370--action_19 (244) = happyShift action_36-action_19 (245) = happyShift action_37-action_19 (246) = happyShift action_38-action_19 (251) = happyShift action_39-action_19 (253) = happyShift action_40-action_19 (254) = happyShift action_41-action_19 (261) = happyShift action_45-action_19 (265) = happyShift action_46-action_19 (269) = happyShift action_47-action_19 (270) = happyShift action_48-action_19 (272) = happyShift action_49-action_19 (273) = happyShift action_50-action_19 (274) = happyShift action_51-action_19 (275) = happyShift action_52-action_19 (276) = happyShift action_53-action_19 (277) = happyShift action_54-action_19 (278) = happyShift action_55-action_19 (279) = happyShift action_56-action_19 (280) = happyShift action_57-action_19 (281) = happyShift action_58-action_19 (282) = happyShift action_59-action_19 (283) = happyShift action_60-action_19 (284) = happyShift action_61-action_19 (286) = happyShift action_62-action_19 (294) = happyShift action_66-action_19 (295) = happyShift action_67-action_19 (296) = happyShift action_68-action_19 (311) = happyShift action_69-action_19 (317) = happyShift action_70-action_19 (320) = happyShift action_71-action_19 (332) = happyShift action_72-action_19 (334) = happyShift action_73-action_19 (336) = happyShift action_107-action_19 (338) = happyShift action_75-action_19 (340) = happyShift action_76-action_19 (345) = happyShift action_77-action_19 (346) = happyShift action_78-action_19 (347) = happyShift action_79-action_19 (350) = happyShift action_80-action_19 (351) = happyShift action_81-action_19 (354) = happyShift action_82-action_19 (355) = happyShift action_83-action_19 (356) = happyShift action_84-action_19 (357) = happyShift action_85-action_19 (358) = happyShift action_86-action_19 (359) = happyShift action_87-action_19 (360) = happyShift action_88-action_19 (361) = happyShift action_89-action_19 (362) = happyShift action_90-action_19 (363) = happyShift action_91-action_19 (364) = happyShift action_92-action_19 (365) = happyShift action_93-action_19 (366) = happyShift action_94-action_19 (371) = happyShift action_95-action_19 (372) = happyShift action_96-action_19 (373) = happyShift action_97-action_19 (374) = happyShift action_98-action_19 (376) = happyShift action_99-action_19 (377) = happyShift action_100-action_19 (378) = happyShift action_101-action_19 (379) = happyShift action_102-action_19 (380) = happyShift action_103-action_19 (38) = happyGoto action_13-action_19 (142) = happyGoto action_16-action_19 (143) = happyGoto action_448-action_19 (144) = happyGoto action_105-action_19 (145) = happyGoto action_18-action_19 (147) = happyGoto action_19-action_19 (148) = happyGoto action_20-action_19 (149) = happyGoto action_21-action_19 (150) = happyGoto action_22-action_19 (151) = happyGoto action_23-action_19 (152) = happyGoto action_24-action_19 (192) = happyGoto action_25-action_19 (195) = happyGoto action_26-action_19 (198) = happyGoto action_27-action_19 (219) = happyGoto action_29-action_19 (220) = happyGoto action_30-action_19 (221) = happyGoto action_106-action_19 (227) = happyGoto action_32-action_19 (229) = happyGoto action_33-action_19 (230) = happyGoto action_34-action_19 (233) = happyGoto action_35-action_19 _ = happyFail--action_20 (244) = happyShift action_36-action_20 (245) = happyShift action_37-action_20 (246) = happyShift action_38-action_20 (251) = happyShift action_39-action_20 (253) = happyShift action_40-action_20 (254) = happyShift action_41-action_20 (261) = happyShift action_45-action_20 (265) = happyShift action_46-action_20 (269) = happyShift action_47-action_20 (270) = happyShift action_48-action_20 (272) = happyShift action_49-action_20 (273) = happyShift action_50-action_20 (274) = happyShift action_51-action_20 (275) = happyShift action_52-action_20 (276) = happyShift action_53-action_20 (277) = happyShift action_54-action_20 (278) = happyShift action_55-action_20 (279) = happyShift action_56-action_20 (280) = happyShift action_57-action_20 (281) = happyShift action_58-action_20 (282) = happyShift action_59-action_20 (283) = happyShift action_60-action_20 (284) = happyShift action_61-action_20 (286) = happyShift action_62-action_20 (294) = happyShift action_66-action_20 (295) = happyShift action_67-action_20 (296) = happyShift action_68-action_20 (311) = happyShift action_69-action_20 (317) = happyShift action_70-action_20 (320) = happyShift action_71-action_20 (332) = happyShift action_72-action_20 (334) = happyShift action_73-action_20 (336) = happyShift action_107-action_20 (338) = happyShift action_75-action_20 (340) = happyShift action_76-action_20 (345) = happyShift action_77-action_20 (346) = happyShift action_78-action_20 (347) = happyShift action_79-action_20 (350) = happyShift action_80-action_20 (351) = happyShift action_81-action_20 (354) = happyShift action_82-action_20 (355) = happyShift action_83-action_20 (356) = happyShift action_84-action_20 (357) = happyShift action_85-action_20 (358) = happyShift action_86-action_20 (359) = happyShift action_87-action_20 (360) = happyShift action_88-action_20 (361) = happyShift action_89-action_20 (362) = happyShift action_90-action_20 (363) = happyShift action_91-action_20 (364) = happyShift action_92-action_20 (365) = happyShift action_93-action_20 (366) = happyShift action_94-action_20 (371) = happyShift action_95-action_20 (372) = happyShift action_96-action_20 (373) = happyShift action_97-action_20 (374) = happyShift action_98-action_20 (376) = happyShift action_99-action_20 (377) = happyShift action_100-action_20 (378) = happyShift action_101-action_20 (379) = happyShift action_102-action_20 (380) = happyShift action_103-action_20 (38) = happyGoto action_13-action_20 (142) = happyGoto action_16-action_20 (143) = happyGoto action_447-action_20 (144) = happyGoto action_105-action_20 (145) = happyGoto action_18-action_20 (147) = happyGoto action_19-action_20 (148) = happyGoto action_20-action_20 (149) = happyGoto action_21-action_20 (150) = happyGoto action_22-action_20 (151) = happyGoto action_23-action_20 (152) = happyGoto action_24-action_20 (192) = happyGoto action_25-action_20 (195) = happyGoto action_26-action_20 (198) = happyGoto action_27-action_20 (219) = happyGoto action_29-action_20 (220) = happyGoto action_30-action_20 (221) = happyGoto action_106-action_20 (227) = happyGoto action_32-action_20 (229) = happyGoto action_33-action_20 (230) = happyGoto action_34-action_20 (233) = happyGoto action_35-action_20 _ = happyFail--action_21 (244) = happyShift action_36-action_21 (245) = happyShift action_37-action_21 (253) = happyShift action_40-action_21 (265) = happyShift action_46-action_21 (270) = happyShift action_48-action_21 (272) = happyShift action_49-action_21 (273) = happyShift action_50-action_21 (274) = happyShift action_51-action_21 (275) = happyShift action_52-action_21 (276) = happyShift action_53-action_21 (277) = happyShift action_54-action_21 (279) = happyShift action_56-action_21 (280) = happyShift action_57-action_21 (281) = happyShift action_58-action_21 (282) = happyShift action_59-action_21 (283) = happyShift action_60-action_21 (286) = happyShift action_62-action_21 (317) = happyShift action_70-action_21 (332) = happyShift action_72-action_21 (334) = happyShift action_73-action_21 (336) = happyShift action_107-action_21 (338) = happyShift action_75-action_21 (340) = happyShift action_76-action_21 (345) = happyShift action_77-action_21 (346) = happyShift action_78-action_21 (347) = happyShift action_79-action_21 (350) = happyShift action_80-action_21 (351) = happyShift action_81-action_21 (354) = happyShift action_82-action_21 (355) = happyShift action_83-action_21 (356) = happyShift action_84-action_21 (357) = happyShift action_85-action_21 (358) = happyShift action_86-action_21 (359) = happyShift action_87-action_21 (360) = happyShift action_88-action_21 (361) = happyShift action_89-action_21 (362) = happyShift action_90-action_21 (363) = happyShift action_91-action_21 (364) = happyShift action_92-action_21 (365) = happyShift action_93-action_21 (366) = happyShift action_94-action_21 (371) = happyShift action_95-action_21 (372) = happyShift action_96-action_21 (373) = happyShift action_97-action_21 (374) = happyShift action_98-action_21 (376) = happyShift action_99-action_21 (377) = happyShift action_100-action_21 (378) = happyShift action_101-action_21 (379) = happyShift action_102-action_21 (380) = happyShift action_103-action_21 (38) = happyGoto action_13-action_21 (142) = happyGoto action_16-action_21 (150) = happyGoto action_446-action_21 (151) = happyGoto action_23-action_21 (152) = happyGoto action_24-action_21 (192) = happyGoto action_25-action_21 (195) = happyGoto action_26-action_21 (198) = happyGoto action_27-action_21 (219) = happyGoto action_29-action_21 (220) = happyGoto action_30-action_21 (221) = happyGoto action_106-action_21 (227) = happyGoto action_32-action_21 (229) = happyGoto action_33-action_21 (230) = happyGoto action_34-action_21 (233) = happyGoto action_35-action_21 _ = happyReduce_385--action_22 _ = happyReduce_393--action_23 (328) = happyShift action_445-action_23 _ = happyReduce_396--action_24 _ = happyReduce_398--action_25 _ = happyReduce_399--action_26 _ = happyReduce_64--action_27 _ = happyReduce_521--action_28 (343) = happyShift action_444-action_28 _ = happyFail--action_29 (316) = happyShift action_443-action_29 _ = happyReduce_63--action_30 _ = happyReduce_583--action_31 (343) = happyReduce_581-action_31 _ = happyReduce_586--action_32 _ = happyReduce_590--action_33 _ = happyReduce_519--action_34 _ = happyReduce_619--action_35 _ = happyReduce_401--action_36 _ = happyReduce_410--action_37 _ = happyReduce_605--action_38 (244) = happyShift action_36-action_38 (245) = happyShift action_37-action_38 (246) = happyShift action_38-action_38 (251) = happyShift action_39-action_38 (253) = happyShift action_40-action_38 (254) = happyShift action_41-action_38 (261) = happyShift action_45-action_38 (265) = happyShift action_46-action_38 (269) = happyShift action_47-action_38 (270) = happyShift action_48-action_38 (272) = happyShift action_49-action_38 (273) = happyShift action_50-action_38 (274) = happyShift action_51-action_38 (275) = happyShift action_52-action_38 (276) = happyShift action_53-action_38 (277) = happyShift action_54-action_38 (278) = happyShift action_55-action_38 (279) = happyShift action_56-action_38 (280) = happyShift action_57-action_38 (281) = happyShift action_58-action_38 (282) = happyShift action_59-action_38 (283) = happyShift action_60-action_38 (284) = happyShift action_61-action_38 (286) = happyShift action_62-action_38 (294) = happyShift action_66-action_38 (295) = happyShift action_67-action_38 (296) = happyShift action_68-action_38 (311) = happyShift action_69-action_38 (317) = happyShift action_70-action_38 (320) = happyShift action_71-action_38 (332) = happyShift action_72-action_38 (334) = happyShift action_73-action_38 (336) = happyShift action_107-action_38 (338) = happyShift action_75-action_38 (340) = happyShift action_76-action_38 (345) = happyShift action_77-action_38 (346) = happyShift action_78-action_38 (347) = happyShift action_79-action_38 (350) = happyShift action_80-action_38 (351) = happyShift action_81-action_38 (354) = happyShift action_82-action_38 (355) = happyShift action_83-action_38 (356) = happyShift action_84-action_38 (357) = happyShift action_85-action_38 (358) = happyShift action_86-action_38 (359) = happyShift action_87-action_38 (360) = happyShift action_88-action_38 (361) = happyShift action_89-action_38 (362) = happyShift action_90-action_38 (363) = happyShift action_91-action_38 (364) = happyShift action_92-action_38 (365) = happyShift action_93-action_38 (366) = happyShift action_94-action_38 (371) = happyShift action_95-action_38 (372) = happyShift action_96-action_38 (373) = happyShift action_97-action_38 (374) = happyShift action_98-action_38 (376) = happyShift action_99-action_38 (377) = happyShift action_100-action_38 (378) = happyShift action_101-action_38 (379) = happyShift action_102-action_38 (380) = happyShift action_103-action_38 (38) = happyGoto action_13-action_38 (142) = happyGoto action_16-action_38 (143) = happyGoto action_442-action_38 (144) = happyGoto action_105-action_38 (145) = happyGoto action_18-action_38 (147) = happyGoto action_19-action_38 (148) = happyGoto action_20-action_38 (149) = happyGoto action_21-action_38 (150) = happyGoto action_22-action_38 (151) = happyGoto action_23-action_38 (152) = happyGoto action_24-action_38 (192) = happyGoto action_25-action_38 (195) = happyGoto action_26-action_38 (198) = happyGoto action_27-action_38 (219) = happyGoto action_29-action_38 (220) = happyGoto action_30-action_38 (221) = happyGoto action_106-action_38 (227) = happyGoto action_32-action_38 (229) = happyGoto action_33-action_38 (230) = happyGoto action_34-action_38 (233) = happyGoto action_35-action_38 _ = happyFail--action_39 (328) = happyShift action_305-action_39 (330) = happyShift action_306-action_39 (181) = happyGoto action_441-action_39 _ = happyFail--action_40 _ = happyReduce_607--action_41 (244) = happyShift action_36-action_41 (245) = happyShift action_37-action_41 (246) = happyShift action_38-action_41 (251) = happyShift action_39-action_41 (253) = happyShift action_40-action_41 (254) = happyShift action_41-action_41 (261) = happyShift action_45-action_41 (265) = happyShift action_46-action_41 (269) = happyShift action_47-action_41 (270) = happyShift action_48-action_41 (272) = happyShift action_49-action_41 (273) = happyShift action_50-action_41 (274) = happyShift action_51-action_41 (275) = happyShift action_52-action_41 (276) = happyShift action_53-action_41 (277) = happyShift action_54-action_41 (278) = happyShift action_55-action_41 (279) = happyShift action_56-action_41 (280) = happyShift action_57-action_41 (281) = happyShift action_58-action_41 (282) = happyShift action_59-action_41 (283) = happyShift action_60-action_41 (284) = happyShift action_61-action_41 (286) = happyShift action_62-action_41 (294) = happyShift action_66-action_41 (295) = happyShift action_67-action_41 (296) = happyShift action_68-action_41 (311) = happyShift action_69-action_41 (313) = happyShift action_440-action_41 (317) = happyShift action_70-action_41 (320) = happyShift action_71-action_41 (332) = happyShift action_72-action_41 (334) = happyShift action_73-action_41 (336) = happyShift action_107-action_41 (338) = happyShift action_75-action_41 (340) = happyShift action_76-action_41 (345) = happyShift action_77-action_41 (346) = happyShift action_78-action_41 (347) = happyShift action_79-action_41 (350) = happyShift action_80-action_41 (351) = happyShift action_81-action_41 (354) = happyShift action_82-action_41 (355) = happyShift action_83-action_41 (356) = happyShift action_84-action_41 (357) = happyShift action_85-action_41 (358) = happyShift action_86-action_41 (359) = happyShift action_87-action_41 (360) = happyShift action_88-action_41 (361) = happyShift action_89-action_41 (362) = happyShift action_90-action_41 (363) = happyShift action_91-action_41 (364) = happyShift action_92-action_41 (365) = happyShift action_93-action_41 (366) = happyShift action_94-action_41 (371) = happyShift action_95-action_41 (372) = happyShift action_96-action_41 (373) = happyShift action_97-action_41 (374) = happyShift action_98-action_41 (376) = happyShift action_99-action_41 (377) = happyShift action_100-action_41 (378) = happyShift action_101-action_41 (379) = happyShift action_102-action_41 (380) = happyShift action_103-action_41 (38) = happyGoto action_13-action_41 (142) = happyGoto action_16-action_41 (143) = happyGoto action_437-action_41 (144) = happyGoto action_105-action_41 (145) = happyGoto action_18-action_41 (147) = happyGoto action_19-action_41 (148) = happyGoto action_20-action_41 (149) = happyGoto action_21-action_41 (150) = happyGoto action_22-action_41 (151) = happyGoto action_23-action_41 (152) = happyGoto action_24-action_41 (176) = happyGoto action_438-action_41 (177) = happyGoto action_439-action_41 (192) = happyGoto action_25-action_41 (195) = happyGoto action_26-action_41 (198) = happyGoto action_27-action_41 (219) = happyGoto action_29-action_41 (220) = happyGoto action_30-action_41 (221) = happyGoto action_106-action_41 (227) = happyGoto action_32-action_41 (229) = happyGoto action_33-action_41 (230) = happyGoto action_34-action_41 (233) = happyGoto action_35-action_41 _ = happyFail--action_42 _ = happyReduce_86--action_43 _ = happyReduce_87--action_44 _ = happyReduce_88--action_45 (328) = happyShift action_309-action_45 (330) = happyShift action_310-action_45 (72) = happyGoto action_307-action_45 (73) = happyGoto action_436-action_45 _ = happyFail--action_46 _ = happyReduce_606--action_47 (358) = happyShift action_435-action_47 _ = happyFail--action_48 _ = happyReduce_594--action_49 _ = happyReduce_608--action_50 _ = happyReduce_609--action_51 _ = happyReduce_610--action_52 _ = happyReduce_592--action_53 _ = happyReduce_593--action_54 _ = happyReduce_591--action_55 (328) = happyShift action_305-action_55 (330) = happyShift action_306-action_55 (181) = happyGoto action_434-action_55 _ = happyFail--action_56 _ = happyReduce_595--action_57 _ = happyReduce_611--action_58 _ = happyReduce_612--action_59 _ = happyReduce_613--action_60 _ = happyReduce_614--action_61 (244) = happyShift action_36-action_61 (245) = happyShift action_37-action_61 (253) = happyShift action_40-action_61 (265) = happyShift action_46-action_61 (270) = happyShift action_48-action_61 (272) = happyShift action_49-action_61 (273) = happyShift action_50-action_61 (274) = happyShift action_51-action_61 (275) = happyShift action_52-action_61 (276) = happyShift action_53-action_61 (277) = happyShift action_54-action_61 (279) = happyShift action_56-action_61 (280) = happyShift action_57-action_61 (281) = happyShift action_58-action_61 (282) = happyShift action_59-action_61 (283) = happyShift action_60-action_61 (286) = happyShift action_62-action_61 (317) = happyShift action_70-action_61 (332) = happyShift action_72-action_61 (334) = happyShift action_73-action_61 (336) = happyShift action_107-action_61 (338) = happyShift action_75-action_61 (340) = happyShift action_76-action_61 (345) = happyShift action_77-action_61 (346) = happyShift action_78-action_61 (347) = happyShift action_79-action_61 (350) = happyShift action_80-action_61 (351) = happyShift action_81-action_61 (354) = happyShift action_82-action_61 (355) = happyShift action_83-action_61 (356) = happyShift action_84-action_61 (357) = happyShift action_85-action_61 (358) = happyShift action_86-action_61 (359) = happyShift action_87-action_61 (360) = happyShift action_88-action_61 (361) = happyShift action_89-action_61 (362) = happyShift action_90-action_61 (363) = happyShift action_91-action_61 (364) = happyShift action_92-action_61 (365) = happyShift action_93-action_61 (366) = happyShift action_94-action_61 (371) = happyShift action_95-action_61 (372) = happyShift action_96-action_61 (373) = happyShift action_97-action_61 (374) = happyShift action_98-action_61 (376) = happyShift action_99-action_61 (377) = happyShift action_100-action_61 (378) = happyShift action_101-action_61 (379) = happyShift action_102-action_61 (380) = happyShift action_103-action_61 (38) = happyGoto action_13-action_61 (142) = happyGoto action_16-action_61 (150) = happyGoto action_433-action_61 (151) = happyGoto action_23-action_61 (152) = happyGoto action_24-action_61 (192) = happyGoto action_25-action_61 (195) = happyGoto action_26-action_61 (198) = happyGoto action_27-action_61 (219) = happyGoto action_29-action_61 (220) = happyGoto action_30-action_61 (221) = happyGoto action_106-action_61 (227) = happyGoto action_32-action_61 (229) = happyGoto action_33-action_61 (230) = happyGoto action_34-action_61 (233) = happyGoto action_35-action_61 _ = happyFail--action_62 _ = happyReduce_615--action_63 (332) = happyShift action_429-action_63 (77) = happyGoto action_432-action_63 (78) = happyGoto action_428-action_63 _ = happyReduce_177--action_64 (260) = happyShift action_431-action_64 (332) = happyShift action_429-action_64 (77) = happyGoto action_430-action_64 (78) = happyGoto action_428-action_64 _ = happyReduce_177--action_65 (332) = happyShift action_429-action_65 (77) = happyGoto action_427-action_65 (78) = happyGoto action_428-action_65 _ = happyReduce_177--action_66 (358) = happyShift action_426-action_66 _ = happyFail--action_67 (346) = happyShift action_424-action_67 (358) = happyShift action_425-action_67 _ = happyFail--action_68 (358) = happyShift action_423-action_68 _ = happyFail--action_69 (244) = happyShift action_36-action_69 (245) = happyShift action_37-action_69 (253) = happyShift action_40-action_69 (265) = happyShift action_46-action_69 (270) = happyShift action_48-action_69 (272) = happyShift action_49-action_69 (273) = happyShift action_50-action_69 (274) = happyShift action_51-action_69 (275) = happyShift action_52-action_69 (276) = happyShift action_53-action_69 (277) = happyShift action_54-action_69 (279) = happyShift action_56-action_69 (280) = happyShift action_57-action_69 (281) = happyShift action_58-action_69 (282) = happyShift action_59-action_69 (283) = happyShift action_60-action_69 (286) = happyShift action_62-action_69 (312) = happyShift action_421-action_69 (317) = happyShift action_70-action_69 (321) = happyShift action_422-action_69 (332) = happyShift action_72-action_69 (334) = happyShift action_73-action_69 (336) = happyShift action_107-action_69 (338) = happyShift action_75-action_69 (340) = happyShift action_76-action_69 (345) = happyShift action_77-action_69 (346) = happyShift action_78-action_69 (347) = happyShift action_79-action_69 (350) = happyShift action_80-action_69 (351) = happyShift action_81-action_69 (354) = happyShift action_82-action_69 (355) = happyShift action_83-action_69 (356) = happyShift action_84-action_69 (357) = happyShift action_85-action_69 (358) = happyShift action_86-action_69 (359) = happyShift action_87-action_69 (360) = happyShift action_88-action_69 (361) = happyShift action_89-action_69 (362) = happyShift action_90-action_69 (363) = happyShift action_91-action_69 (364) = happyShift action_92-action_69 (365) = happyShift action_93-action_69 (366) = happyShift action_94-action_69 (371) = happyShift action_95-action_69 (372) = happyShift action_96-action_69 (373) = happyShift action_97-action_69 (374) = happyShift action_98-action_69 (376) = happyShift action_99-action_69 (377) = happyShift action_100-action_69 (378) = happyShift action_101-action_69 (379) = happyShift action_102-action_69 (380) = happyShift action_103-action_69 (38) = happyGoto action_13-action_69 (142) = happyGoto action_16-action_69 (150) = happyGoto action_419-action_69 (151) = happyGoto action_23-action_69 (152) = happyGoto action_24-action_69 (179) = happyGoto action_420-action_69 (192) = happyGoto action_25-action_69 (195) = happyGoto action_26-action_69 (198) = happyGoto action_27-action_69 (219) = happyGoto action_29-action_69 (220) = happyGoto action_30-action_69 (221) = happyGoto action_106-action_69 (227) = happyGoto action_32-action_69 (229) = happyGoto action_33-action_69 (230) = happyGoto action_34-action_69 (233) = happyGoto action_35-action_69 _ = happyFail--action_70 (244) = happyShift action_36-action_70 (245) = happyShift action_37-action_70 (253) = happyShift action_40-action_70 (265) = happyShift action_46-action_70 (270) = happyShift action_48-action_70 (272) = happyShift action_49-action_70 (273) = happyShift action_50-action_70 (274) = happyShift action_51-action_70 (275) = happyShift action_52-action_70 (276) = happyShift action_53-action_70 (277) = happyShift action_54-action_70 (279) = happyShift action_56-action_70 (280) = happyShift action_57-action_70 (281) = happyShift action_58-action_70 (282) = happyShift action_59-action_70 (283) = happyShift action_60-action_70 (286) = happyShift action_62-action_70 (317) = happyShift action_70-action_70 (332) = happyShift action_72-action_70 (334) = happyShift action_73-action_70 (336) = happyShift action_107-action_70 (338) = happyShift action_75-action_70 (340) = happyShift action_76-action_70 (345) = happyShift action_77-action_70 (346) = happyShift action_78-action_70 (347) = happyShift action_79-action_70 (350) = happyShift action_80-action_70 (351) = happyShift action_81-action_70 (354) = happyShift action_82-action_70 (355) = happyShift action_83-action_70 (356) = happyShift action_84-action_70 (357) = happyShift action_85-action_70 (358) = happyShift action_86-action_70 (359) = happyShift action_87-action_70 (360) = happyShift action_88-action_70 (361) = happyShift action_89-action_70 (362) = happyShift action_90-action_70 (363) = happyShift action_91-action_70 (364) = happyShift action_92-action_70 (365) = happyShift action_93-action_70 (366) = happyShift action_94-action_70 (371) = happyShift action_95-action_70 (372) = happyShift action_96-action_70 (373) = happyShift action_97-action_70 (374) = happyShift action_98-action_70 (376) = happyShift action_99-action_70 (377) = happyShift action_100-action_70 (378) = happyShift action_101-action_70 (379) = happyShift action_102-action_70 (380) = happyShift action_103-action_70 (38) = happyGoto action_13-action_70 (142) = happyGoto action_16-action_70 (150) = happyGoto action_418-action_70 (151) = happyGoto action_23-action_70 (152) = happyGoto action_24-action_70 (192) = happyGoto action_25-action_70 (195) = happyGoto action_26-action_70 (198) = happyGoto action_27-action_70 (219) = happyGoto action_29-action_70 (220) = happyGoto action_30-action_70 (221) = happyGoto action_106-action_70 (227) = happyGoto action_32-action_70 (229) = happyGoto action_33-action_70 (230) = happyGoto action_34-action_70 (233) = happyGoto action_35-action_70 _ = happyFail--action_71 (244) = happyShift action_36-action_71 (245) = happyShift action_37-action_71 (253) = happyShift action_40-action_71 (265) = happyShift action_46-action_71 (270) = happyShift action_48-action_71 (272) = happyShift action_49-action_71 (273) = happyShift action_50-action_71 (274) = happyShift action_51-action_71 (275) = happyShift action_52-action_71 (276) = happyShift action_53-action_71 (277) = happyShift action_54-action_71 (279) = happyShift action_56-action_71 (280) = happyShift action_57-action_71 (281) = happyShift action_58-action_71 (282) = happyShift action_59-action_71 (283) = happyShift action_60-action_71 (286) = happyShift action_62-action_71 (317) = happyShift action_70-action_71 (332) = happyShift action_72-action_71 (334) = happyShift action_73-action_71 (336) = happyShift action_107-action_71 (338) = happyShift action_75-action_71 (340) = happyShift action_76-action_71 (345) = happyShift action_77-action_71 (346) = happyShift action_78-action_71 (347) = happyShift action_79-action_71 (350) = happyShift action_80-action_71 (351) = happyShift action_81-action_71 (354) = happyShift action_82-action_71 (355) = happyShift action_83-action_71 (356) = happyShift action_84-action_71 (357) = happyShift action_85-action_71 (358) = happyShift action_86-action_71 (359) = happyShift action_87-action_71 (360) = happyShift action_88-action_71 (361) = happyShift action_89-action_71 (362) = happyShift action_90-action_71 (363) = happyShift action_91-action_71 (364) = happyShift action_92-action_71 (365) = happyShift action_93-action_71 (366) = happyShift action_94-action_71 (371) = happyShift action_95-action_71 (372) = happyShift action_96-action_71 (373) = happyShift action_97-action_71 (374) = happyShift action_98-action_71 (376) = happyShift action_99-action_71 (377) = happyShift action_100-action_71 (378) = happyShift action_101-action_71 (379) = happyShift action_102-action_71 (380) = happyShift action_103-action_71 (38) = happyGoto action_13-action_71 (142) = happyGoto action_16-action_71 (149) = happyGoto action_417-action_71 (150) = happyGoto action_22-action_71 (151) = happyGoto action_23-action_71 (152) = happyGoto action_24-action_71 (192) = happyGoto action_25-action_71 (195) = happyGoto action_26-action_71 (198) = happyGoto action_27-action_71 (219) = happyGoto action_29-action_71 (220) = happyGoto action_30-action_71 (221) = happyGoto action_106-action_71 (227) = happyGoto action_32-action_71 (229) = happyGoto action_33-action_71 (230) = happyGoto action_34-action_71 (233) = happyGoto action_35-action_71 _ = happyFail--action_72 (244) = happyShift action_36-action_72 (245) = happyShift action_37-action_72 (246) = happyShift action_38-action_72 (251) = happyShift action_39-action_72 (253) = happyShift action_40-action_72 (254) = happyShift action_41-action_72 (261) = happyShift action_45-action_72 (265) = happyShift action_46-action_72 (269) = happyShift action_47-action_72 (270) = happyShift action_48-action_72 (272) = happyShift action_49-action_72 (273) = happyShift action_50-action_72 (274) = happyShift action_51-action_72 (275) = happyShift action_52-action_72 (276) = happyShift action_53-action_72 (277) = happyShift action_54-action_72 (278) = happyShift action_55-action_72 (279) = happyShift action_56-action_72 (280) = happyShift action_57-action_72 (281) = happyShift action_58-action_72 (282) = happyShift action_59-action_72 (283) = happyShift action_60-action_72 (284) = happyShift action_61-action_72 (286) = happyShift action_62-action_72 (294) = happyShift action_66-action_72 (295) = happyShift action_67-action_72 (296) = happyShift action_68-action_72 (308) = happyShift action_212-action_72 (311) = happyShift action_69-action_72 (317) = happyShift action_70-action_72 (320) = happyShift action_71-action_72 (321) = happyShift action_214-action_72 (322) = happyShift action_215-action_72 (327) = happyShift action_216-action_72 (332) = happyShift action_72-action_72 (333) = happyShift action_251-action_72 (334) = happyShift action_73-action_72 (336) = happyShift action_107-action_72 (338) = happyShift action_75-action_72 (340) = happyShift action_76-action_72 (344) = happyShift action_380-action_72 (345) = happyShift action_77-action_72 (346) = happyShift action_78-action_72 (347) = happyShift action_79-action_72 (348) = happyShift action_221-action_72 (349) = happyShift action_222-action_72 (350) = happyShift action_80-action_72 (351) = happyShift action_81-action_72 (352) = happyShift action_223-action_72 (353) = happyShift action_224-action_72 (354) = happyShift action_82-action_72 (355) = happyShift action_83-action_72 (356) = happyShift action_84-action_72 (357) = happyShift action_85-action_72 (358) = happyShift action_86-action_72 (359) = happyShift action_87-action_72 (360) = happyShift action_88-action_72 (361) = happyShift action_89-action_72 (362) = happyShift action_90-action_72 (363) = happyShift action_91-action_72 (364) = happyShift action_92-action_72 (365) = happyShift action_93-action_72 (366) = happyShift action_94-action_72 (371) = happyShift action_95-action_72 (372) = happyShift action_96-action_72 (373) = happyShift action_97-action_72 (374) = happyShift action_98-action_72 (376) = happyShift action_99-action_72 (377) = happyShift action_100-action_72 (378) = happyShift action_101-action_72 (379) = happyShift action_102-action_72 (380) = happyShift action_103-action_72 (38) = happyGoto action_13-action_72 (142) = happyGoto action_16-action_72 (143) = happyGoto action_367-action_72 (144) = happyGoto action_368-action_72 (145) = happyGoto action_18-action_72 (147) = happyGoto action_19-action_72 (148) = happyGoto action_20-action_72 (149) = happyGoto action_21-action_72 (150) = happyGoto action_22-action_72 (151) = happyGoto action_23-action_72 (152) = happyGoto action_24-action_72 (157) = happyGoto action_414-action_72 (161) = happyGoto action_415-action_72 (162) = happyGoto action_416-action_72 (192) = happyGoto action_25-action_72 (195) = happyGoto action_26-action_72 (198) = happyGoto action_27-action_72 (200) = happyGoto action_371-action_72 (212) = happyGoto action_372-action_72 (214) = happyGoto action_373-action_72 (219) = happyGoto action_29-action_72 (220) = happyGoto action_30-action_72 (221) = happyGoto action_106-action_72 (223) = happyGoto action_374-action_72 (224) = happyGoto action_407-action_72 (226) = happyGoto action_408-action_72 (227) = happyGoto action_32-action_72 (228) = happyGoto action_209-action_72 (229) = happyGoto action_33-action_72 (230) = happyGoto action_34-action_72 (231) = happyGoto action_210-action_72 (232) = happyGoto action_211-action_72 (233) = happyGoto action_35-action_72 _ = happyFail--action_73 (244) = happyShift action_36-action_73 (245) = happyShift action_37-action_73 (246) = happyShift action_38-action_73 (251) = happyShift action_39-action_73 (253) = happyShift action_40-action_73 (254) = happyShift action_41-action_73 (261) = happyShift action_45-action_73 (265) = happyShift action_46-action_73 (269) = happyShift action_47-action_73 (270) = happyShift action_48-action_73 (272) = happyShift action_49-action_73 (273) = happyShift action_50-action_73 (274) = happyShift action_51-action_73 (275) = happyShift action_52-action_73 (276) = happyShift action_53-action_73 (277) = happyShift action_54-action_73 (278) = happyShift action_55-action_73 (279) = happyShift action_56-action_73 (280) = happyShift action_57-action_73 (281) = happyShift action_58-action_73 (282) = happyShift action_59-action_73 (283) = happyShift action_60-action_73 (284) = happyShift action_61-action_73 (286) = happyShift action_62-action_73 (294) = happyShift action_66-action_73 (295) = happyShift action_67-action_73 (296) = happyShift action_68-action_73 (308) = happyShift action_212-action_73 (311) = happyShift action_69-action_73 (317) = happyShift action_70-action_73 (320) = happyShift action_71-action_73 (321) = happyShift action_214-action_73 (322) = happyShift action_215-action_73 (327) = happyShift action_216-action_73 (332) = happyShift action_72-action_73 (334) = happyShift action_73-action_73 (336) = happyShift action_107-action_73 (338) = happyShift action_75-action_73 (340) = happyShift action_76-action_73 (344) = happyShift action_380-action_73 (345) = happyShift action_77-action_73 (346) = happyShift action_78-action_73 (347) = happyShift action_79-action_73 (348) = happyShift action_221-action_73 (349) = happyShift action_222-action_73 (350) = happyShift action_80-action_73 (351) = happyShift action_81-action_73 (352) = happyShift action_223-action_73 (353) = happyShift action_224-action_73 (354) = happyShift action_82-action_73 (355) = happyShift action_83-action_73 (356) = happyShift action_84-action_73 (357) = happyShift action_85-action_73 (358) = happyShift action_86-action_73 (359) = happyShift action_87-action_73 (360) = happyShift action_88-action_73 (361) = happyShift action_89-action_73 (362) = happyShift action_90-action_73 (363) = happyShift action_91-action_73 (364) = happyShift action_92-action_73 (365) = happyShift action_93-action_73 (366) = happyShift action_94-action_73 (371) = happyShift action_95-action_73 (372) = happyShift action_96-action_73 (373) = happyShift action_97-action_73 (374) = happyShift action_98-action_73 (376) = happyShift action_99-action_73 (377) = happyShift action_100-action_73 (378) = happyShift action_101-action_73 (379) = happyShift action_102-action_73 (380) = happyShift action_103-action_73 (38) = happyGoto action_13-action_73 (142) = happyGoto action_16-action_73 (143) = happyGoto action_367-action_73 (144) = happyGoto action_368-action_73 (145) = happyGoto action_18-action_73 (147) = happyGoto action_19-action_73 (148) = happyGoto action_20-action_73 (149) = happyGoto action_21-action_73 (150) = happyGoto action_22-action_73 (151) = happyGoto action_23-action_73 (152) = happyGoto action_24-action_73 (157) = happyGoto action_411-action_73 (162) = happyGoto action_412-action_73 (167) = happyGoto action_413-action_73 (192) = happyGoto action_25-action_73 (195) = happyGoto action_26-action_73 (198) = happyGoto action_27-action_73 (200) = happyGoto action_371-action_73 (212) = happyGoto action_372-action_73 (214) = happyGoto action_373-action_73 (219) = happyGoto action_29-action_73 (220) = happyGoto action_30-action_73 (221) = happyGoto action_106-action_73 (223) = happyGoto action_374-action_73 (224) = happyGoto action_407-action_73 (226) = happyGoto action_408-action_73 (227) = happyGoto action_32-action_73 (228) = happyGoto action_209-action_73 (229) = happyGoto action_33-action_73 (230) = happyGoto action_34-action_73 (231) = happyGoto action_210-action_73 (232) = happyGoto action_211-action_73 (233) = happyGoto action_35-action_73 _ = happyReduce_460--action_74 (244) = happyShift action_36-action_74 (245) = happyShift action_37-action_74 (246) = happyShift action_38-action_74 (251) = happyShift action_39-action_74 (253) = happyShift action_40-action_74 (254) = happyShift action_41-action_74 (261) = happyShift action_45-action_74 (265) = happyShift action_46-action_74 (269) = happyShift action_47-action_74 (270) = happyShift action_48-action_74 (272) = happyShift action_49-action_74 (273) = happyShift action_50-action_74 (274) = happyShift action_51-action_74 (275) = happyShift action_52-action_74 (276) = happyShift action_53-action_74 (277) = happyShift action_54-action_74 (278) = happyShift action_55-action_74 (279) = happyShift action_56-action_74 (280) = happyShift action_57-action_74 (281) = happyShift action_58-action_74 (282) = happyShift action_59-action_74 (283) = happyShift action_60-action_74 (284) = happyShift action_61-action_74 (286) = happyShift action_62-action_74 (294) = happyShift action_66-action_74 (295) = happyShift action_67-action_74 (296) = happyShift action_68-action_74 (308) = happyShift action_212-action_74 (311) = happyShift action_69-action_74 (317) = happyShift action_70-action_74 (320) = happyShift action_379-action_74 (321) = happyShift action_214-action_74 (322) = happyShift action_215-action_74 (327) = happyShift action_216-action_74 (332) = happyShift action_72-action_74 (334) = happyShift action_73-action_74 (336) = happyShift action_107-action_74 (337) = happyShift action_250-action_74 (338) = happyShift action_75-action_74 (340) = happyShift action_76-action_74 (343) = happyShift action_244-action_74 (344) = happyShift action_380-action_74 (345) = happyShift action_77-action_74 (346) = happyShift action_78-action_74 (347) = happyShift action_79-action_74 (348) = happyShift action_221-action_74 (349) = happyShift action_222-action_74 (350) = happyShift action_80-action_74 (351) = happyShift action_81-action_74 (352) = happyShift action_223-action_74 (353) = happyShift action_224-action_74 (354) = happyShift action_82-action_74 (355) = happyShift action_83-action_74 (356) = happyShift action_84-action_74 (357) = happyShift action_85-action_74 (358) = happyShift action_86-action_74 (359) = happyShift action_87-action_74 (360) = happyShift action_88-action_74 (361) = happyShift action_89-action_74 (362) = happyShift action_90-action_74 (363) = happyShift action_91-action_74 (364) = happyShift action_92-action_74 (365) = happyShift action_93-action_74 (366) = happyShift action_94-action_74 (371) = happyShift action_95-action_74 (372) = happyShift action_96-action_74 (373) = happyShift action_97-action_74 (374) = happyShift action_98-action_74 (376) = happyShift action_99-action_74 (377) = happyShift action_100-action_74 (378) = happyShift action_101-action_74 (379) = happyShift action_102-action_74 (380) = happyShift action_103-action_74 (38) = happyGoto action_13-action_74 (142) = happyGoto action_16-action_74 (143) = happyGoto action_367-action_74 (144) = happyGoto action_368-action_74 (145) = happyGoto action_18-action_74 (147) = happyGoto action_19-action_74 (148) = happyGoto action_20-action_74 (149) = happyGoto action_21-action_74 (150) = happyGoto action_22-action_74 (151) = happyGoto action_23-action_74 (152) = happyGoto action_24-action_74 (157) = happyGoto action_369-action_74 (158) = happyGoto action_370-action_74 (192) = happyGoto action_25-action_74 (195) = happyGoto action_26-action_74 (198) = happyGoto action_27-action_74 (200) = happyGoto action_371-action_74 (212) = happyGoto action_372-action_74 (214) = happyGoto action_373-action_74 (219) = happyGoto action_29-action_74 (220) = happyGoto action_30-action_74 (221) = happyGoto action_106-action_74 (223) = happyGoto action_374-action_74 (224) = happyGoto action_375-action_74 (225) = happyGoto action_410-action_74 (226) = happyGoto action_376-action_74 (227) = happyGoto action_32-action_74 (228) = happyGoto action_209-action_74 (229) = happyGoto action_33-action_74 (230) = happyGoto action_34-action_74 (231) = happyGoto action_377-action_74 (232) = happyGoto action_211-action_74 (233) = happyGoto action_35-action_74 (236) = happyGoto action_378-action_74 _ = happyFail--action_75 (244) = happyShift action_36-action_75 (245) = happyShift action_37-action_75 (246) = happyShift action_38-action_75 (251) = happyShift action_39-action_75 (253) = happyShift action_40-action_75 (254) = happyShift action_41-action_75 (261) = happyShift action_45-action_75 (265) = happyShift action_46-action_75 (269) = happyShift action_47-action_75 (270) = happyShift action_48-action_75 (272) = happyShift action_49-action_75 (273) = happyShift action_50-action_75 (274) = happyShift action_51-action_75 (275) = happyShift action_52-action_75 (276) = happyShift action_53-action_75 (277) = happyShift action_54-action_75 (278) = happyShift action_55-action_75 (279) = happyShift action_56-action_75 (280) = happyShift action_57-action_75 (281) = happyShift action_58-action_75 (282) = happyShift action_59-action_75 (283) = happyShift action_60-action_75 (284) = happyShift action_61-action_75 (286) = happyShift action_62-action_75 (294) = happyShift action_66-action_75 (295) = happyShift action_67-action_75 (296) = happyShift action_68-action_75 (308) = happyShift action_212-action_75 (311) = happyShift action_69-action_75 (317) = happyShift action_70-action_75 (320) = happyShift action_71-action_75 (321) = happyShift action_214-action_75 (322) = happyShift action_215-action_75 (327) = happyShift action_216-action_75 (332) = happyShift action_72-action_75 (334) = happyShift action_73-action_75 (336) = happyShift action_107-action_75 (338) = happyShift action_75-action_75 (339) = happyShift action_243-action_75 (340) = happyShift action_76-action_75 (343) = happyShift action_244-action_75 (344) = happyShift action_380-action_75 (345) = happyShift action_77-action_75 (346) = happyShift action_78-action_75 (347) = happyShift action_79-action_75 (348) = happyShift action_221-action_75 (349) = happyShift action_222-action_75 (350) = happyShift action_80-action_75 (351) = happyShift action_81-action_75 (352) = happyShift action_223-action_75 (353) = happyShift action_224-action_75 (354) = happyShift action_82-action_75 (355) = happyShift action_83-action_75 (356) = happyShift action_84-action_75 (357) = happyShift action_85-action_75 (358) = happyShift action_86-action_75 (359) = happyShift action_87-action_75 (360) = happyShift action_88-action_75 (361) = happyShift action_89-action_75 (362) = happyShift action_90-action_75 (363) = happyShift action_91-action_75 (364) = happyShift action_92-action_75 (365) = happyShift action_93-action_75 (366) = happyShift action_94-action_75 (371) = happyShift action_95-action_75 (372) = happyShift action_96-action_75 (373) = happyShift action_97-action_75 (374) = happyShift action_98-action_75 (376) = happyShift action_99-action_75 (377) = happyShift action_100-action_75 (378) = happyShift action_101-action_75 (379) = happyShift action_102-action_75 (380) = happyShift action_103-action_75 (38) = happyGoto action_13-action_75 (142) = happyGoto action_16-action_75 (143) = happyGoto action_367-action_75 (144) = happyGoto action_368-action_75 (145) = happyGoto action_18-action_75 (147) = happyGoto action_19-action_75 (148) = happyGoto action_20-action_75 (149) = happyGoto action_21-action_75 (150) = happyGoto action_22-action_75 (151) = happyGoto action_23-action_75 (152) = happyGoto action_24-action_75 (157) = happyGoto action_405-action_75 (158) = happyGoto action_406-action_75 (192) = happyGoto action_25-action_75 (195) = happyGoto action_26-action_75 (198) = happyGoto action_27-action_75 (200) = happyGoto action_371-action_75 (212) = happyGoto action_372-action_75 (214) = happyGoto action_373-action_75 (219) = happyGoto action_29-action_75 (220) = happyGoto action_30-action_75 (221) = happyGoto action_106-action_75 (223) = happyGoto action_374-action_75 (224) = happyGoto action_407-action_75 (226) = happyGoto action_408-action_75 (227) = happyGoto action_32-action_75 (228) = happyGoto action_209-action_75 (229) = happyGoto action_33-action_75 (230) = happyGoto action_34-action_75 (231) = happyGoto action_210-action_75 (232) = happyGoto action_211-action_75 (233) = happyGoto action_35-action_75 (236) = happyGoto action_409-action_75 _ = happyFail--action_76 (244) = happyShift action_36-action_76 (245) = happyShift action_37-action_76 (253) = happyShift action_40-action_76 (265) = happyShift action_46-action_76 (270) = happyShift action_48-action_76 (272) = happyShift action_49-action_76 (273) = happyShift action_50-action_76 (274) = happyShift action_51-action_76 (275) = happyShift action_52-action_76 (276) = happyShift action_53-action_76 (277) = happyShift action_54-action_76 (279) = happyShift action_56-action_76 (280) = happyShift action_57-action_76 (281) = happyShift action_58-action_76 (282) = happyShift action_59-action_76 (283) = happyShift action_60-action_76 (286) = happyShift action_62-action_76 (332) = happyShift action_72-action_76 (334) = happyShift action_73-action_76 (336) = happyShift action_107-action_76 (338) = happyShift action_75-action_76 (340) = happyShift action_76-action_76 (345) = happyShift action_77-action_76 (346) = happyShift action_78-action_76 (347) = happyShift action_79-action_76 (350) = happyShift action_80-action_76 (351) = happyShift action_81-action_76 (354) = happyShift action_82-action_76 (355) = happyShift action_83-action_76 (356) = happyShift action_84-action_76 (357) = happyShift action_85-action_76 (358) = happyShift action_86-action_76 (359) = happyShift action_87-action_76 (360) = happyShift action_88-action_76 (361) = happyShift action_89-action_76 (362) = happyShift action_90-action_76 (363) = happyShift action_91-action_76 (364) = happyShift action_92-action_76 (365) = happyShift action_93-action_76 (366) = happyShift action_94-action_76 (371) = happyShift action_95-action_76 (372) = happyShift action_96-action_76 (373) = happyShift action_97-action_76 (374) = happyShift action_98-action_76 (376) = happyShift action_99-action_76 (377) = happyShift action_100-action_76 (378) = happyShift action_101-action_76 (379) = happyShift action_102-action_76 (380) = happyShift action_103-action_76 (38) = happyGoto action_13-action_76 (142) = happyGoto action_16-action_76 (152) = happyGoto action_403-action_76 (192) = happyGoto action_25-action_76 (195) = happyGoto action_26-action_76 (198) = happyGoto action_27-action_76 (219) = happyGoto action_404-action_76 (220) = happyGoto action_30-action_76 (221) = happyGoto action_106-action_76 (227) = happyGoto action_32-action_76 (229) = happyGoto action_33-action_76 (230) = happyGoto action_34-action_76 (233) = happyGoto action_35-action_76 _ = happyFail--action_77 (245) = happyShift action_37-action_77 (253) = happyShift action_40-action_77 (265) = happyShift action_46-action_77 (270) = happyShift action_48-action_77 (272) = happyShift action_49-action_77 (273) = happyShift action_50-action_77 (274) = happyShift action_51-action_77 (275) = happyShift action_52-action_77 (276) = happyShift action_53-action_77 (277) = happyShift action_54-action_77 (279) = happyShift action_56-action_77 (280) = happyShift action_57-action_77 (281) = happyShift action_58-action_77 (282) = happyShift action_59-action_77 (283) = happyShift action_60-action_77 (286) = happyShift action_62-action_77 (332) = happyShift action_217-action_77 (336) = happyShift action_402-action_77 (338) = happyShift action_219-action_77 (346) = happyShift action_78-action_77 (347) = happyShift action_79-action_77 (350) = happyShift action_80-action_77 (351) = happyShift action_81-action_77 (354) = happyShift action_82-action_77 (355) = happyShift action_83-action_77 (195) = happyGoto action_400-action_77 (198) = happyGoto action_27-action_77 (219) = happyGoto action_401-action_77 (220) = happyGoto action_30-action_77 (221) = happyGoto action_106-action_77 (227) = happyGoto action_32-action_77 (229) = happyGoto action_33-action_77 (230) = happyGoto action_34-action_77 _ = happyFail--action_78 _ = happyReduce_589--action_79 _ = happyReduce_622--action_80 _ = happyReduce_587--action_81 _ = happyReduce_620--action_82 _ = happyReduce_588--action_83 _ = happyReduce_621--action_84 _ = happyReduce_514--action_85 _ = happyReduce_627--action_86 _ = happyReduce_628--action_87 _ = happyReduce_402--action_88 _ = happyReduce_403--action_89 _ = happyReduce_631--action_90 _ = happyReduce_632--action_91 _ = happyReduce_629--action_92 _ = happyReduce_630--action_93 _ = happyReduce_633--action_94 _ = happyReduce_634--action_95 (244) = happyShift action_36-action_95 (245) = happyShift action_37-action_95 (246) = happyShift action_38-action_95 (251) = happyShift action_39-action_95 (253) = happyShift action_40-action_95 (254) = happyShift action_41-action_95 (261) = happyShift action_45-action_95 (265) = happyShift action_46-action_95 (269) = happyShift action_47-action_95 (270) = happyShift action_48-action_95 (272) = happyShift action_49-action_95 (273) = happyShift action_50-action_95 (274) = happyShift action_51-action_95 (275) = happyShift action_52-action_95 (276) = happyShift action_53-action_95 (277) = happyShift action_54-action_95 (278) = happyShift action_55-action_95 (279) = happyShift action_56-action_95 (280) = happyShift action_57-action_95 (281) = happyShift action_58-action_95 (282) = happyShift action_59-action_95 (283) = happyShift action_60-action_95 (284) = happyShift action_61-action_95 (286) = happyShift action_62-action_95 (294) = happyShift action_66-action_95 (295) = happyShift action_67-action_95 (296) = happyShift action_68-action_95 (311) = happyShift action_69-action_95 (317) = happyShift action_70-action_95 (320) = happyShift action_71-action_95 (332) = happyShift action_72-action_95 (334) = happyShift action_73-action_95 (336) = happyShift action_107-action_95 (338) = happyShift action_75-action_95 (340) = happyShift action_76-action_95 (345) = happyShift action_77-action_95 (346) = happyShift action_78-action_95 (347) = happyShift action_79-action_95 (350) = happyShift action_80-action_95 (351) = happyShift action_81-action_95 (354) = happyShift action_82-action_95 (355) = happyShift action_83-action_95 (356) = happyShift action_84-action_95 (357) = happyShift action_85-action_95 (358) = happyShift action_86-action_95 (359) = happyShift action_87-action_95 (360) = happyShift action_88-action_95 (361) = happyShift action_89-action_95 (362) = happyShift action_90-action_95 (363) = happyShift action_91-action_95 (364) = happyShift action_92-action_95 (365) = happyShift action_93-action_95 (366) = happyShift action_94-action_95 (371) = happyShift action_95-action_95 (372) = happyShift action_96-action_95 (373) = happyShift action_97-action_95 (374) = happyShift action_98-action_95 (376) = happyShift action_99-action_95 (377) = happyShift action_100-action_95 (378) = happyShift action_101-action_95 (379) = happyShift action_102-action_95 (380) = happyShift action_103-action_95 (38) = happyGoto action_13-action_95 (142) = happyGoto action_16-action_95 (143) = happyGoto action_399-action_95 (144) = happyGoto action_105-action_95 (145) = happyGoto action_18-action_95 (147) = happyGoto action_19-action_95 (148) = happyGoto action_20-action_95 (149) = happyGoto action_21-action_95 (150) = happyGoto action_22-action_95 (151) = happyGoto action_23-action_95 (152) = happyGoto action_24-action_95 (192) = happyGoto action_25-action_95 (195) = happyGoto action_26-action_95 (198) = happyGoto action_27-action_95 (219) = happyGoto action_29-action_95 (220) = happyGoto action_30-action_95 (221) = happyGoto action_106-action_95 (227) = happyGoto action_32-action_95 (229) = happyGoto action_33-action_95 (230) = happyGoto action_34-action_95 (233) = happyGoto action_35-action_95 _ = happyFail--action_96 (244) = happyShift action_36-action_96 (245) = happyShift action_37-action_96 (246) = happyShift action_38-action_96 (251) = happyShift action_39-action_96 (253) = happyShift action_40-action_96 (254) = happyShift action_41-action_96 (261) = happyShift action_45-action_96 (265) = happyShift action_46-action_96 (269) = happyShift action_47-action_96 (270) = happyShift action_48-action_96 (272) = happyShift action_49-action_96 (273) = happyShift action_50-action_96 (274) = happyShift action_51-action_96 (275) = happyShift action_52-action_96 (276) = happyShift action_53-action_96 (277) = happyShift action_54-action_96 (278) = happyShift action_55-action_96 (279) = happyShift action_56-action_96 (280) = happyShift action_57-action_96 (281) = happyShift action_58-action_96 (282) = happyShift action_59-action_96 (283) = happyShift action_60-action_96 (284) = happyShift action_61-action_96 (286) = happyShift action_62-action_96 (294) = happyShift action_66-action_96 (295) = happyShift action_67-action_96 (296) = happyShift action_68-action_96 (311) = happyShift action_69-action_96 (317) = happyShift action_70-action_96 (320) = happyShift action_71-action_96 (332) = happyShift action_72-action_96 (334) = happyShift action_73-action_96 (336) = happyShift action_107-action_96 (338) = happyShift action_75-action_96 (340) = happyShift action_76-action_96 (345) = happyShift action_77-action_96 (346) = happyShift action_78-action_96 (347) = happyShift action_79-action_96 (350) = happyShift action_80-action_96 (351) = happyShift action_81-action_96 (354) = happyShift action_82-action_96 (355) = happyShift action_83-action_96 (356) = happyShift action_84-action_96 (357) = happyShift action_85-action_96 (358) = happyShift action_86-action_96 (359) = happyShift action_87-action_96 (360) = happyShift action_88-action_96 (361) = happyShift action_89-action_96 (362) = happyShift action_90-action_96 (363) = happyShift action_91-action_96 (364) = happyShift action_92-action_96 (365) = happyShift action_93-action_96 (366) = happyShift action_94-action_96 (371) = happyShift action_95-action_96 (372) = happyShift action_96-action_96 (373) = happyShift action_97-action_96 (374) = happyShift action_98-action_96 (376) = happyShift action_99-action_96 (377) = happyShift action_100-action_96 (378) = happyShift action_101-action_96 (379) = happyShift action_102-action_96 (380) = happyShift action_103-action_96 (38) = happyGoto action_13-action_96 (142) = happyGoto action_16-action_96 (144) = happyGoto action_398-action_96 (145) = happyGoto action_18-action_96 (147) = happyGoto action_19-action_96 (148) = happyGoto action_20-action_96 (149) = happyGoto action_21-action_96 (150) = happyGoto action_22-action_96 (151) = happyGoto action_23-action_96 (152) = happyGoto action_24-action_96 (192) = happyGoto action_25-action_96 (195) = happyGoto action_26-action_96 (198) = happyGoto action_27-action_96 (219) = happyGoto action_29-action_96 (220) = happyGoto action_30-action_96 (221) = happyGoto action_106-action_96 (227) = happyGoto action_32-action_96 (229) = happyGoto action_33-action_96 (230) = happyGoto action_34-action_96 (233) = happyGoto action_35-action_96 _ = happyFail--action_97 (245) = happyShift action_37-action_97 (253) = happyShift action_40-action_97 (265) = happyShift action_46-action_97 (270) = happyShift action_179-action_97 (272) = happyShift action_49-action_97 (273) = happyShift action_50-action_97 (274) = happyShift action_51-action_97 (275) = happyShift action_180-action_97 (276) = happyShift action_181-action_97 (277) = happyShift action_182-action_97 (280) = happyShift action_57-action_97 (281) = happyShift action_58-action_97 (282) = happyShift action_59-action_97 (283) = happyShift action_60-action_97 (286) = happyShift action_62-action_97 (299) = happyShift action_183-action_97 (300) = happyShift action_184-action_97 (321) = happyShift action_185-action_97 (328) = happyShift action_186-action_97 (332) = happyShift action_187-action_97 (334) = happyShift action_188-action_97 (336) = happyShift action_189-action_97 (338) = happyShift action_190-action_97 (345) = happyShift action_191-action_97 (346) = happyShift action_192-action_97 (347) = happyShift action_193-action_97 (351) = happyShift action_194-action_97 (355) = happyShift action_195-action_97 (356) = happyShift action_84-action_97 (358) = happyShift action_196-action_97 (359) = happyShift action_197-action_97 (376) = happyShift action_198-action_97 (377) = happyShift action_199-action_97 (379) = happyShift action_102-action_97 (380) = happyShift action_103-action_97 (100) = happyGoto action_164-action_97 (101) = happyGoto action_397-action_97 (103) = happyGoto action_166-action_97 (104) = happyGoto action_167-action_97 (106) = happyGoto action_168-action_97 (107) = happyGoto action_169-action_97 (142) = happyGoto action_170-action_97 (192) = happyGoto action_171-action_97 (202) = happyGoto action_172-action_97 (203) = happyGoto action_173-action_97 (205) = happyGoto action_174-action_97 (206) = happyGoto action_175-action_97 (215) = happyGoto action_176-action_97 (217) = happyGoto action_177-action_97 (227) = happyGoto action_178-action_97 _ = happyFail--action_98 (328) = happyShift action_395-action_98 (330) = happyShift action_396-action_98 (155) = happyGoto action_394-action_98 _ = happyFail--action_99 _ = happyReduce_411--action_100 (244) = happyShift action_36-action_100 (245) = happyShift action_37-action_100 (246) = happyShift action_38-action_100 (251) = happyShift action_39-action_100 (253) = happyShift action_40-action_100 (254) = happyShift action_41-action_100 (261) = happyShift action_45-action_100 (265) = happyShift action_46-action_100 (269) = happyShift action_47-action_100 (270) = happyShift action_48-action_100 (272) = happyShift action_49-action_100 (273) = happyShift action_50-action_100 (274) = happyShift action_51-action_100 (275) = happyShift action_52-action_100 (276) = happyShift action_53-action_100 (277) = happyShift action_54-action_100 (278) = happyShift action_55-action_100 (279) = happyShift action_56-action_100 (280) = happyShift action_57-action_100 (281) = happyShift action_58-action_100 (282) = happyShift action_59-action_100 (283) = happyShift action_60-action_100 (284) = happyShift action_61-action_100 (286) = happyShift action_62-action_100 (294) = happyShift action_66-action_100 (295) = happyShift action_67-action_100 (296) = happyShift action_68-action_100 (311) = happyShift action_69-action_100 (317) = happyShift action_70-action_100 (320) = happyShift action_71-action_100 (332) = happyShift action_72-action_100 (334) = happyShift action_73-action_100 (336) = happyShift action_107-action_100 (338) = happyShift action_75-action_100 (340) = happyShift action_76-action_100 (345) = happyShift action_77-action_100 (346) = happyShift action_78-action_100 (347) = happyShift action_79-action_100 (350) = happyShift action_80-action_100 (351) = happyShift action_81-action_100 (354) = happyShift action_82-action_100 (355) = happyShift action_83-action_100 (356) = happyShift action_84-action_100 (357) = happyShift action_85-action_100 (358) = happyShift action_86-action_100 (359) = happyShift action_87-action_100 (360) = happyShift action_88-action_100 (361) = happyShift action_89-action_100 (362) = happyShift action_90-action_100 (363) = happyShift action_91-action_100 (364) = happyShift action_92-action_100 (365) = happyShift action_93-action_100 (366) = happyShift action_94-action_100 (371) = happyShift action_95-action_100 (372) = happyShift action_96-action_100 (373) = happyShift action_97-action_100 (374) = happyShift action_98-action_100 (376) = happyShift action_99-action_100 (377) = happyShift action_100-action_100 (378) = happyShift action_101-action_100 (379) = happyShift action_102-action_100 (380) = happyShift action_103-action_100 (38) = happyGoto action_13-action_100 (142) = happyGoto action_16-action_100 (143) = happyGoto action_393-action_100 (144) = happyGoto action_105-action_100 (145) = happyGoto action_18-action_100 (147) = happyGoto action_19-action_100 (148) = happyGoto action_20-action_100 (149) = happyGoto action_21-action_100 (150) = happyGoto action_22-action_100 (151) = happyGoto action_23-action_100 (152) = happyGoto action_24-action_100 (192) = happyGoto action_25-action_100 (195) = happyGoto action_26-action_100 (198) = happyGoto action_27-action_100 (219) = happyGoto action_29-action_100 (220) = happyGoto action_30-action_100 (221) = happyGoto action_106-action_100 (227) = happyGoto action_32-action_100 (229) = happyGoto action_33-action_100 (230) = happyGoto action_34-action_100 (233) = happyGoto action_35-action_100 _ = happyFail--action_101 (245) = happyShift action_37-action_101 (253) = happyShift action_40-action_101 (265) = happyShift action_46-action_101 (272) = happyShift action_49-action_101 (273) = happyShift action_50-action_101 (274) = happyShift action_51-action_101 (275) = happyShift action_180-action_101 (276) = happyShift action_181-action_101 (277) = happyShift action_182-action_101 (280) = happyShift action_57-action_101 (281) = happyShift action_58-action_101 (282) = happyShift action_59-action_101 (283) = happyShift action_60-action_101 (286) = happyShift action_62-action_101 (332) = happyShift action_389-action_101 (334) = happyShift action_390-action_101 (336) = happyShift action_391-action_101 (338) = happyShift action_392-action_101 (346) = happyShift action_192-action_101 (347) = happyShift action_193-action_101 (351) = happyShift action_194-action_101 (355) = happyShift action_195-action_101 (201) = happyGoto action_386-action_101 (202) = happyGoto action_387-action_101 (203) = happyGoto action_173-action_101 (205) = happyGoto action_174-action_101 (206) = happyGoto action_175-action_101 (215) = happyGoto action_388-action_101 (217) = happyGoto action_177-action_101 (227) = happyGoto action_178-action_101 _ = happyFail--action_102 _ = happyReduce_362--action_103 _ = happyReduce_363--action_104 (381) = happyAccept-action_104 _ = happyFail--action_105 (308) = happyShift action_212-action_105 (309) = happyShift action_381-action_105 (320) = happyShift action_213-action_105 (321) = happyShift action_214-action_105 (322) = happyShift action_215-action_105 (323) = happyShift action_382-action_105 (324) = happyShift action_383-action_105 (325) = happyShift action_384-action_105 (326) = happyShift action_385-action_105 (327) = happyShift action_216-action_105 (344) = happyShift action_220-action_105 (348) = happyShift action_221-action_105 (349) = happyShift action_222-action_105 (352) = happyShift action_223-action_105 (353) = happyShift action_224-action_105 (200) = happyGoto action_359-action_105 (211) = happyGoto action_360-action_105 (213) = happyGoto action_361-action_105 (222) = happyGoto action_205-action_105 (224) = happyGoto action_206-action_105 (225) = happyGoto action_207-action_105 (226) = happyGoto action_208-action_105 (228) = happyGoto action_209-action_105 (231) = happyGoto action_210-action_105 (232) = happyGoto action_211-action_105 _ = happyReduce_369--action_106 _ = happyReduce_586--action_107 (244) = happyShift action_36-action_107 (245) = happyShift action_37-action_107 (246) = happyShift action_38-action_107 (251) = happyShift action_39-action_107 (253) = happyShift action_40-action_107 (254) = happyShift action_41-action_107 (261) = happyShift action_45-action_107 (265) = happyShift action_46-action_107 (269) = happyShift action_47-action_107 (270) = happyShift action_48-action_107 (272) = happyShift action_49-action_107 (273) = happyShift action_50-action_107 (274) = happyShift action_51-action_107 (275) = happyShift action_52-action_107 (276) = happyShift action_53-action_107 (277) = happyShift action_54-action_107 (278) = happyShift action_55-action_107 (279) = happyShift action_56-action_107 (280) = happyShift action_57-action_107 (281) = happyShift action_58-action_107 (282) = happyShift action_59-action_107 (283) = happyShift action_60-action_107 (284) = happyShift action_61-action_107 (286) = happyShift action_62-action_107 (294) = happyShift action_66-action_107 (295) = happyShift action_67-action_107 (296) = happyShift action_68-action_107 (308) = happyShift action_212-action_107 (311) = happyShift action_69-action_107 (317) = happyShift action_70-action_107 (320) = happyShift action_379-action_107 (321) = happyShift action_214-action_107 (322) = happyShift action_215-action_107 (327) = happyShift action_216-action_107 (332) = happyShift action_72-action_107 (334) = happyShift action_73-action_107 (336) = happyShift action_107-action_107 (337) = happyShift action_250-action_107 (338) = happyShift action_75-action_107 (340) = happyShift action_76-action_107 (343) = happyShift action_244-action_107 (344) = happyShift action_380-action_107 (345) = happyShift action_77-action_107 (346) = happyShift action_78-action_107 (347) = happyShift action_79-action_107 (348) = happyShift action_221-action_107 (349) = happyShift action_222-action_107 (350) = happyShift action_80-action_107 (351) = happyShift action_81-action_107 (352) = happyShift action_223-action_107 (353) = happyShift action_224-action_107 (354) = happyShift action_82-action_107 (355) = happyShift action_83-action_107 (356) = happyShift action_84-action_107 (357) = happyShift action_85-action_107 (358) = happyShift action_86-action_107 (359) = happyShift action_87-action_107 (360) = happyShift action_88-action_107 (361) = happyShift action_89-action_107 (362) = happyShift action_90-action_107 (363) = happyShift action_91-action_107 (364) = happyShift action_92-action_107 (365) = happyShift action_93-action_107 (366) = happyShift action_94-action_107 (371) = happyShift action_95-action_107 (372) = happyShift action_96-action_107 (373) = happyShift action_97-action_107 (374) = happyShift action_98-action_107 (376) = happyShift action_99-action_107 (377) = happyShift action_100-action_107 (378) = happyShift action_101-action_107 (379) = happyShift action_102-action_107 (380) = happyShift action_103-action_107 (38) = happyGoto action_13-action_107 (142) = happyGoto action_16-action_107 (143) = happyGoto action_367-action_107 (144) = happyGoto action_368-action_107 (145) = happyGoto action_18-action_107 (147) = happyGoto action_19-action_107 (148) = happyGoto action_20-action_107 (149) = happyGoto action_21-action_107 (150) = happyGoto action_22-action_107 (151) = happyGoto action_23-action_107 (152) = happyGoto action_24-action_107 (157) = happyGoto action_369-action_107 (158) = happyGoto action_370-action_107 (192) = happyGoto action_25-action_107 (195) = happyGoto action_26-action_107 (198) = happyGoto action_27-action_107 (200) = happyGoto action_371-action_107 (212) = happyGoto action_372-action_107 (214) = happyGoto action_373-action_107 (219) = happyGoto action_29-action_107 (220) = happyGoto action_30-action_107 (221) = happyGoto action_106-action_107 (223) = happyGoto action_374-action_107 (224) = happyGoto action_375-action_107 (225) = happyGoto action_246-action_107 (226) = happyGoto action_376-action_107 (227) = happyGoto action_32-action_107 (228) = happyGoto action_209-action_107 (229) = happyGoto action_33-action_107 (230) = happyGoto action_34-action_107 (231) = happyGoto action_377-action_107 (232) = happyGoto action_211-action_107 (233) = happyGoto action_35-action_107 (236) = happyGoto action_378-action_107 _ = happyFail--action_108 (381) = happyAccept-action_108 _ = happyFail--action_109 (262) = happyShift action_366-action_109 _ = happyFail--action_110 _ = happyReduce_21--action_111 _ = happyReduce_645--action_112 (1) = happyAccept-action_112 _ = happyFail--action_113 (1) = happyAccept-action_113 _ = happyFail--action_114 (1) = happyAccept-action_114 _ = happyFail--action_115 _ = happyReduce_94--action_116 _ = happyReduce_95--action_117 _ = happyReduce_96--action_118 (260) = happyShift action_364-action_118 (305) = happyShift action_365-action_118 (61) = happyGoto action_363-action_118 _ = happyReduce_138--action_119 _ = happyReduce_97--action_120 _ = happyReduce_112--action_121 _ = happyReduce_349--action_122 _ = happyReduce_341--action_123 _ = happyReduce_113--action_124 _ = happyReduce_346--action_125 (308) = happyShift action_212-action_125 (309) = happyShift action_362-action_125 (320) = happyShift action_213-action_125 (321) = happyShift action_214-action_125 (322) = happyShift action_215-action_125 (327) = happyShift action_216-action_125 (344) = happyShift action_220-action_125 (348) = happyShift action_221-action_125 (349) = happyShift action_222-action_125 (352) = happyShift action_223-action_125 (353) = happyShift action_224-action_125 (93) = happyGoto action_358-action_125 (200) = happyGoto action_359-action_125 (211) = happyGoto action_360-action_125 (213) = happyGoto action_361-action_125 (222) = happyGoto action_205-action_125 (224) = happyGoto action_206-action_125 (225) = happyGoto action_207-action_125 (226) = happyGoto action_208-action_125 (228) = happyGoto action_209-action_125 (231) = happyGoto action_210-action_125 (232) = happyGoto action_211-action_125 _ = happyReduce_216--action_126 _ = happyReduce_342--action_127 _ = happyReduce_343--action_128 _ = happyReduce_344--action_129 _ = happyReduce_345--action_130 (245) = happyShift action_37-action_130 (253) = happyShift action_40-action_130 (265) = happyShift action_46-action_130 (272) = happyShift action_49-action_130 (273) = happyShift action_50-action_130 (274) = happyShift action_51-action_130 (275) = happyShift action_180-action_130 (276) = happyShift action_181-action_130 (277) = happyShift action_182-action_130 (280) = happyShift action_57-action_130 (281) = happyShift action_58-action_130 (282) = happyShift action_59-action_130 (283) = happyShift action_60-action_130 (286) = happyShift action_62-action_130 (299) = happyShift action_183-action_130 (300) = happyShift action_184-action_130 (321) = happyShift action_185-action_130 (328) = happyShift action_186-action_130 (332) = happyShift action_187-action_130 (334) = happyShift action_188-action_130 (336) = happyShift action_189-action_130 (338) = happyShift action_190-action_130 (345) = happyShift action_191-action_130 (346) = happyShift action_192-action_130 (347) = happyShift action_193-action_130 (351) = happyShift action_194-action_130 (355) = happyShift action_195-action_130 (358) = happyShift action_196-action_130 (359) = happyShift action_197-action_130 (376) = happyShift action_198-action_130 (377) = happyShift action_199-action_130 (379) = happyShift action_102-action_130 (380) = happyShift action_103-action_130 (60) = happyGoto action_355-action_130 (100) = happyGoto action_164-action_130 (103) = happyGoto action_356-action_130 (104) = happyGoto action_357-action_130 (106) = happyGoto action_168-action_130 (107) = happyGoto action_169-action_130 (142) = happyGoto action_170-action_130 (202) = happyGoto action_172-action_130 (203) = happyGoto action_173-action_130 (205) = happyGoto action_174-action_130 (206) = happyGoto action_175-action_130 (215) = happyGoto action_176-action_130 (217) = happyGoto action_177-action_130 (227) = happyGoto action_178-action_130 _ = happyFail--action_131 (279) = happyShift action_354-action_131 _ = happyReduce_130--action_132 (336) = happyShift action_353-action_132 _ = happyFail--action_133 (260) = happyShift action_352-action_133 _ = happyFail--action_134 (245) = happyShift action_37-action_134 (253) = happyShift action_40-action_134 (265) = happyShift action_46-action_134 (270) = happyShift action_179-action_134 (272) = happyShift action_49-action_134 (273) = happyShift action_50-action_134 (274) = happyShift action_51-action_134 (275) = happyShift action_180-action_134 (276) = happyShift action_181-action_134 (277) = happyShift action_182-action_134 (280) = happyShift action_57-action_134 (281) = happyShift action_58-action_134 (282) = happyShift action_59-action_134 (283) = happyShift action_60-action_134 (286) = happyShift action_62-action_134 (299) = happyShift action_183-action_134 (300) = happyShift action_184-action_134 (321) = happyShift action_185-action_134 (328) = happyShift action_186-action_134 (332) = happyShift action_187-action_134 (334) = happyShift action_188-action_134 (336) = happyShift action_189-action_134 (338) = happyShift action_190-action_134 (345) = happyShift action_191-action_134 (346) = happyShift action_192-action_134 (347) = happyShift action_193-action_134 (351) = happyShift action_194-action_134 (355) = happyShift action_195-action_134 (356) = happyShift action_84-action_134 (358) = happyShift action_196-action_134 (359) = happyShift action_197-action_134 (376) = happyShift action_198-action_134 (377) = happyShift action_199-action_134 (379) = happyShift action_102-action_134 (380) = happyShift action_103-action_134 (95) = happyGoto action_349-action_134 (100) = happyGoto action_164-action_134 (101) = happyGoto action_350-action_134 (103) = happyGoto action_166-action_134 (104) = happyGoto action_167-action_134 (106) = happyGoto action_168-action_134 (107) = happyGoto action_169-action_134 (108) = happyGoto action_351-action_134 (142) = happyGoto action_170-action_134 (192) = happyGoto action_171-action_134 (202) = happyGoto action_172-action_134 (203) = happyGoto action_173-action_134 (205) = happyGoto action_174-action_134 (206) = happyGoto action_175-action_134 (215) = happyGoto action_176-action_134 (217) = happyGoto action_177-action_134 (227) = happyGoto action_178-action_134 _ = happyFail--action_135 _ = happyReduce_131--action_136 (245) = happyShift action_37-action_136 (253) = happyShift action_40-action_136 (260) = happyShift action_347-action_136 (265) = happyShift action_46-action_136 (272) = happyShift action_49-action_136 (273) = happyShift action_50-action_136 (274) = happyShift action_51-action_136 (275) = happyShift action_180-action_136 (276) = happyShift action_181-action_136 (277) = happyShift action_182-action_136 (279) = happyShift action_348-action_136 (280) = happyShift action_57-action_136 (281) = happyShift action_58-action_136 (282) = happyShift action_59-action_136 (283) = happyShift action_60-action_136 (286) = happyShift action_62-action_136 (299) = happyShift action_183-action_136 (300) = happyShift action_184-action_136 (321) = happyShift action_185-action_136 (328) = happyShift action_186-action_136 (332) = happyShift action_187-action_136 (334) = happyShift action_188-action_136 (336) = happyShift action_189-action_136 (338) = happyShift action_190-action_136 (345) = happyShift action_191-action_136 (346) = happyShift action_192-action_136 (347) = happyShift action_193-action_136 (351) = happyShift action_194-action_136 (355) = happyShift action_195-action_136 (358) = happyShift action_196-action_136 (359) = happyShift action_197-action_136 (376) = happyShift action_198-action_136 (377) = happyShift action_199-action_136 (379) = happyShift action_102-action_136 (380) = happyShift action_103-action_136 (100) = happyGoto action_164-action_136 (104) = happyGoto action_345-action_136 (106) = happyGoto action_346-action_136 (107) = happyGoto action_169-action_136 (142) = happyGoto action_170-action_136 (202) = happyGoto action_172-action_136 (203) = happyGoto action_173-action_136 (205) = happyGoto action_174-action_136 (206) = happyGoto action_175-action_136 (215) = happyGoto action_176-action_136 (217) = happyGoto action_177-action_136 (227) = happyGoto action_178-action_136 _ = happyFail--action_137 (255) = happyShift action_343-action_137 (272) = happyShift action_344-action_137 (89) = happyGoto action_342-action_137 _ = happyFail--action_138 (358) = happyShift action_341-action_138 (75) = happyGoto action_339-action_138 (76) = happyGoto action_340-action_138 _ = happyReduce_175--action_139 (245) = happyShift action_37-action_139 (253) = happyShift action_40-action_139 (265) = happyShift action_46-action_139 (270) = happyShift action_48-action_139 (272) = happyShift action_49-action_139 (273) = happyShift action_50-action_139 (274) = happyShift action_51-action_139 (275) = happyShift action_52-action_139 (276) = happyShift action_53-action_139 (277) = happyShift action_54-action_139 (279) = happyShift action_56-action_139 (280) = happyShift action_57-action_139 (281) = happyShift action_58-action_139 (282) = happyShift action_59-action_139 (283) = happyShift action_60-action_139 (286) = happyShift action_62-action_139 (332) = happyShift action_217-action_139 (336) = happyShift action_331-action_139 (338) = happyShift action_219-action_139 (346) = happyShift action_78-action_139 (347) = happyShift action_79-action_139 (84) = happyGoto action_336-action_139 (85) = happyGoto action_337-action_139 (193) = happyGoto action_338-action_139 (194) = happyGoto action_335-action_139 (196) = happyGoto action_324-action_139 (198) = happyGoto action_325-action_139 (218) = happyGoto action_326-action_139 (221) = happyGoto action_327-action_139 (227) = happyGoto action_32-action_139 (230) = happyGoto action_328-action_139 _ = happyReduce_195--action_140 (245) = happyShift action_37-action_140 (253) = happyShift action_40-action_140 (265) = happyShift action_46-action_140 (270) = happyShift action_48-action_140 (272) = happyShift action_49-action_140 (273) = happyShift action_50-action_140 (274) = happyShift action_51-action_140 (275) = happyShift action_52-action_140 (276) = happyShift action_53-action_140 (277) = happyShift action_54-action_140 (279) = happyShift action_56-action_140 (280) = happyShift action_57-action_140 (281) = happyShift action_58-action_140 (282) = happyShift action_59-action_140 (283) = happyShift action_60-action_140 (286) = happyShift action_62-action_140 (332) = happyShift action_217-action_140 (336) = happyShift action_331-action_140 (338) = happyShift action_219-action_140 (346) = happyShift action_78-action_140 (347) = happyShift action_79-action_140 (82) = happyGoto action_332-action_140 (83) = happyGoto action_333-action_140 (193) = happyGoto action_334-action_140 (194) = happyGoto action_335-action_140 (196) = happyGoto action_324-action_140 (198) = happyGoto action_325-action_140 (218) = happyGoto action_326-action_140 (221) = happyGoto action_327-action_140 (227) = happyGoto action_32-action_140 (230) = happyGoto action_328-action_140 _ = happyReduce_190--action_141 (245) = happyShift action_37-action_141 (253) = happyShift action_40-action_141 (262) = happyShift action_329-action_141 (265) = happyShift action_46-action_141 (267) = happyShift action_330-action_141 (270) = happyShift action_48-action_141 (272) = happyShift action_49-action_141 (273) = happyShift action_50-action_141 (274) = happyShift action_51-action_141 (275) = happyShift action_52-action_141 (276) = happyShift action_53-action_141 (277) = happyShift action_54-action_141 (279) = happyShift action_56-action_141 (280) = happyShift action_57-action_141 (281) = happyShift action_58-action_141 (282) = happyShift action_59-action_141 (283) = happyShift action_60-action_141 (286) = happyShift action_62-action_141 (332) = happyShift action_217-action_141 (336) = happyShift action_331-action_141 (338) = happyShift action_219-action_141 (346) = happyShift action_78-action_141 (347) = happyShift action_79-action_141 (194) = happyGoto action_323-action_141 (196) = happyGoto action_324-action_141 (198) = happyGoto action_325-action_141 (218) = happyGoto action_326-action_141 (221) = happyGoto action_327-action_141 (227) = happyGoto action_32-action_141 (230) = happyGoto action_328-action_141 _ = happyFail--action_142 (245) = happyShift action_37-action_142 (247) = happyShift action_321-action_142 (253) = happyShift action_40-action_142 (265) = happyShift action_46-action_142 (267) = happyShift action_322-action_142 (270) = happyShift action_48-action_142 (272) = happyShift action_49-action_142 (273) = happyShift action_50-action_142 (274) = happyShift action_51-action_142 (275) = happyShift action_52-action_142 (276) = happyShift action_53-action_142 (277) = happyShift action_54-action_142 (279) = happyShift action_56-action_142 (280) = happyShift action_57-action_142 (281) = happyShift action_58-action_142 (282) = happyShift action_59-action_142 (283) = happyShift action_60-action_142 (286) = happyShift action_62-action_142 (336) = happyShift action_316-action_142 (346) = happyShift action_78-action_142 (350) = happyShift action_80-action_142 (354) = happyShift action_82-action_142 (219) = happyGoto action_320-action_142 (220) = happyGoto action_30-action_142 (221) = happyGoto action_106-action_142 (227) = happyGoto action_32-action_142 _ = happyFail--action_143 (245) = happyShift action_37-action_143 (253) = happyShift action_40-action_143 (260) = happyShift action_318-action_143 (265) = happyShift action_46-action_143 (267) = happyShift action_319-action_143 (270) = happyShift action_48-action_143 (272) = happyShift action_49-action_143 (273) = happyShift action_50-action_143 (274) = happyShift action_51-action_143 (275) = happyShift action_52-action_143 (276) = happyShift action_53-action_143 (277) = happyShift action_54-action_143 (279) = happyShift action_56-action_143 (280) = happyShift action_57-action_143 (281) = happyShift action_58-action_143 (282) = happyShift action_59-action_143 (283) = happyShift action_60-action_143 (286) = happyShift action_62-action_143 (336) = happyShift action_316-action_143 (346) = happyShift action_78-action_143 (350) = happyShift action_80-action_143 (354) = happyShift action_82-action_143 (219) = happyGoto action_317-action_143 (220) = happyGoto action_30-action_143 (221) = happyGoto action_106-action_143 (227) = happyGoto action_32-action_143 _ = happyFail--action_144 (245) = happyShift action_37-action_144 (253) = happyShift action_40-action_144 (265) = happyShift action_46-action_144 (270) = happyShift action_48-action_144 (272) = happyShift action_49-action_144 (273) = happyShift action_50-action_144 (274) = happyShift action_51-action_144 (275) = happyShift action_52-action_144 (276) = happyShift action_53-action_144 (277) = happyShift action_54-action_144 (279) = happyShift action_56-action_144 (280) = happyShift action_57-action_144 (281) = happyShift action_58-action_144 (282) = happyShift action_59-action_144 (283) = happyShift action_60-action_144 (286) = happyShift action_62-action_144 (336) = happyShift action_316-action_144 (346) = happyShift action_78-action_144 (350) = happyShift action_80-action_144 (354) = happyShift action_82-action_144 (219) = happyGoto action_315-action_144 (220) = happyGoto action_30-action_144 (221) = happyGoto action_106-action_144 (227) = happyGoto action_32-action_144 _ = happyFail--action_145 (244) = happyShift action_36-action_145 (245) = happyShift action_37-action_145 (253) = happyShift action_40-action_145 (265) = happyShift action_46-action_145 (270) = happyShift action_48-action_145 (272) = happyShift action_49-action_145 (273) = happyShift action_50-action_145 (274) = happyShift action_51-action_145 (275) = happyShift action_52-action_145 (276) = happyShift action_53-action_145 (277) = happyShift action_54-action_145 (279) = happyShift action_56-action_145 (280) = happyShift action_57-action_145 (281) = happyShift action_58-action_145 (282) = happyShift action_59-action_145 (283) = happyShift action_60-action_145 (286) = happyShift action_62-action_145 (317) = happyShift action_70-action_145 (332) = happyShift action_72-action_145 (334) = happyShift action_73-action_145 (336) = happyShift action_107-action_145 (338) = happyShift action_75-action_145 (340) = happyShift action_76-action_145 (345) = happyShift action_77-action_145 (346) = happyShift action_78-action_145 (347) = happyShift action_79-action_145 (350) = happyShift action_80-action_145 (351) = happyShift action_81-action_145 (354) = happyShift action_82-action_145 (355) = happyShift action_83-action_145 (356) = happyShift action_84-action_145 (357) = happyShift action_85-action_145 (358) = happyShift action_86-action_145 (359) = happyShift action_87-action_145 (360) = happyShift action_88-action_145 (361) = happyShift action_89-action_145 (362) = happyShift action_90-action_145 (363) = happyShift action_91-action_145 (364) = happyShift action_92-action_145 (365) = happyShift action_93-action_145 (366) = happyShift action_94-action_145 (371) = happyShift action_95-action_145 (372) = happyShift action_96-action_145 (373) = happyShift action_97-action_145 (374) = happyShift action_98-action_145 (376) = happyShift action_99-action_145 (377) = happyShift action_100-action_145 (378) = happyShift action_101-action_145 (379) = happyShift action_102-action_145 (380) = happyShift action_103-action_145 (38) = happyGoto action_13-action_145 (142) = happyGoto action_16-action_145 (150) = happyGoto action_314-action_145 (151) = happyGoto action_23-action_145 (152) = happyGoto action_24-action_145 (192) = happyGoto action_25-action_145 (195) = happyGoto action_26-action_145 (198) = happyGoto action_27-action_145 (219) = happyGoto action_29-action_145 (220) = happyGoto action_30-action_145 (221) = happyGoto action_106-action_145 (227) = happyGoto action_32-action_145 (229) = happyGoto action_33-action_145 (230) = happyGoto action_34-action_145 (233) = happyGoto action_35-action_145 _ = happyFail--action_146 _ = happyReduce_641--action_147 _ = happyReduce_642--action_148 _ = happyReduce_643--action_149 _ = happyReduce_644--action_150 (1) = happyAccept-action_150 _ = happyFail--action_151 (292) = happyShift action_313-action_151 (41) = happyGoto action_312-action_151 _ = happyReduce_71--action_152 (314) = happyReduce_483-action_152 _ = happyReduce_501--action_153 (314) = happyShift action_311-action_153 _ = happyFail--action_154 (1) = happyAccept-action_154 _ = happyFail--action_155 _ = happyReduce_498--action_156 (328) = happyShift action_309-action_156 (330) = happyShift action_310-action_156 (72) = happyGoto action_307-action_156 (73) = happyGoto action_308-action_156 _ = happyFail--action_157 (328) = happyShift action_305-action_157 (330) = happyShift action_306-action_157 (181) = happyGoto action_304-action_157 _ = happyFail--action_158 (244) = happyShift action_36-action_158 (245) = happyShift action_37-action_158 (253) = happyShift action_40-action_158 (265) = happyShift action_46-action_158 (270) = happyShift action_48-action_158 (272) = happyShift action_49-action_158 (273) = happyShift action_50-action_158 (274) = happyShift action_51-action_158 (275) = happyShift action_52-action_158 (276) = happyShift action_53-action_158 (277) = happyShift action_54-action_158 (279) = happyShift action_56-action_158 (280) = happyShift action_57-action_158 (281) = happyShift action_58-action_158 (282) = happyShift action_59-action_158 (283) = happyShift action_60-action_158 (286) = happyShift action_62-action_158 (317) = happyShift action_70-action_158 (332) = happyShift action_72-action_158 (334) = happyShift action_73-action_158 (336) = happyShift action_107-action_158 (338) = happyShift action_75-action_158 (340) = happyShift action_76-action_158 (345) = happyShift action_77-action_158 (346) = happyShift action_78-action_158 (347) = happyShift action_79-action_158 (350) = happyShift action_80-action_158 (351) = happyShift action_81-action_158 (354) = happyShift action_82-action_158 (355) = happyShift action_83-action_158 (356) = happyShift action_84-action_158 (357) = happyShift action_85-action_158 (358) = happyShift action_86-action_158 (359) = happyShift action_87-action_158 (360) = happyShift action_88-action_158 (361) = happyShift action_89-action_158 (362) = happyShift action_90-action_158 (363) = happyShift action_91-action_158 (364) = happyShift action_92-action_158 (365) = happyShift action_93-action_158 (366) = happyShift action_94-action_158 (371) = happyShift action_95-action_158 (372) = happyShift action_96-action_158 (373) = happyShift action_97-action_158 (374) = happyShift action_98-action_158 (376) = happyShift action_99-action_158 (377) = happyShift action_100-action_158 (378) = happyShift action_101-action_158 (379) = happyShift action_102-action_158 (380) = happyShift action_103-action_158 (38) = happyGoto action_13-action_158 (142) = happyGoto action_16-action_158 (150) = happyGoto action_303-action_158 (151) = happyGoto action_23-action_158 (152) = happyGoto action_24-action_158 (192) = happyGoto action_25-action_158 (195) = happyGoto action_26-action_158 (198) = happyGoto action_27-action_158 (219) = happyGoto action_29-action_158 (220) = happyGoto action_30-action_158 (221) = happyGoto action_106-action_158 (227) = happyGoto action_32-action_158 (229) = happyGoto action_33-action_158 (230) = happyGoto action_34-action_158 (233) = happyGoto action_35-action_158 _ = happyFail--action_159 (262) = happyShift action_302-action_159 _ = happyFail--action_160 (255) = happyShift action_151-action_160 (39) = happyGoto action_301-action_160 (40) = happyGoto action_235-action_160 _ = happyReduce_68--action_161 (1) = happyAccept-action_161 _ = happyFail--action_162 _ = happyReduce_36--action_163 (255) = happyShift action_151-action_163 (39) = happyGoto action_300-action_163 (40) = happyGoto action_235-action_163 _ = happyReduce_68--action_164 (245) = happyShift action_37-action_164 (253) = happyShift action_40-action_164 (265) = happyShift action_46-action_164 (272) = happyShift action_49-action_164 (273) = happyShift action_50-action_164 (274) = happyShift action_51-action_164 (275) = happyShift action_180-action_164 (276) = happyShift action_181-action_164 (277) = happyShift action_182-action_164 (280) = happyShift action_57-action_164 (281) = happyShift action_58-action_164 (282) = happyShift action_59-action_164 (283) = happyShift action_60-action_164 (286) = happyShift action_62-action_164 (299) = happyShift action_183-action_164 (300) = happyShift action_184-action_164 (321) = happyShift action_185-action_164 (328) = happyShift action_186-action_164 (332) = happyShift action_187-action_164 (334) = happyShift action_188-action_164 (336) = happyShift action_189-action_164 (338) = happyShift action_190-action_164 (345) = happyShift action_191-action_164 (346) = happyShift action_192-action_164 (347) = happyShift action_193-action_164 (351) = happyShift action_194-action_164 (355) = happyShift action_195-action_164 (358) = happyShift action_196-action_164 (359) = happyShift action_197-action_164 (376) = happyShift action_198-action_164 (377) = happyShift action_199-action_164 (379) = happyShift action_102-action_164 (380) = happyShift action_103-action_164 (100) = happyGoto action_164-action_164 (107) = happyGoto action_299-action_164 (142) = happyGoto action_170-action_164 (202) = happyGoto action_172-action_164 (203) = happyGoto action_173-action_164 (205) = happyGoto action_174-action_164 (206) = happyGoto action_175-action_164 (215) = happyGoto action_176-action_164 (217) = happyGoto action_177-action_164 (227) = happyGoto action_178-action_164 _ = happyFail--action_165 (381) = happyAccept-action_165 _ = happyFail--action_166 (319) = happyShift action_298-action_166 _ = happyFail--action_167 _ = happyReduce_234--action_168 (245) = happyShift action_37-action_168 (253) = happyShift action_40-action_168 (265) = happyShift action_46-action_168 (272) = happyShift action_49-action_168 (273) = happyShift action_50-action_168 (274) = happyShift action_51-action_168 (275) = happyShift action_180-action_168 (276) = happyShift action_181-action_168 (277) = happyShift action_182-action_168 (280) = happyShift action_57-action_168 (281) = happyShift action_58-action_168 (282) = happyShift action_59-action_168 (283) = happyShift action_60-action_168 (286) = happyShift action_62-action_168 (299) = happyShift action_183-action_168 (300) = happyShift action_184-action_168 (315) = happyShift action_293-action_168 (317) = happyShift action_294-action_168 (319) = happyReduce_240-action_168 (321) = happyShift action_185-action_168 (322) = happyShift action_267-action_168 (327) = happyShift action_295-action_168 (328) = happyShift action_186-action_168 (332) = happyShift action_187-action_168 (334) = happyShift action_188-action_168 (336) = happyShift action_189-action_168 (338) = happyShift action_190-action_168 (344) = happyShift action_296-action_168 (345) = happyShift action_297-action_168 (346) = happyShift action_192-action_168 (347) = happyShift action_193-action_168 (348) = happyShift action_269-action_168 (349) = happyShift action_270-action_168 (351) = happyShift action_194-action_168 (352) = happyShift action_271-action_168 (353) = happyShift action_272-action_168 (355) = happyShift action_195-action_168 (358) = happyShift action_196-action_168 (359) = happyShift action_197-action_168 (376) = happyShift action_198-action_168 (377) = happyShift action_199-action_168 (379) = happyShift action_102-action_168 (380) = happyShift action_103-action_168 (100) = happyGoto action_164-action_168 (107) = happyGoto action_289-action_168 (142) = happyGoto action_170-action_168 (202) = happyGoto action_172-action_168 (203) = happyGoto action_173-action_168 (204) = happyGoto action_290-action_168 (205) = happyGoto action_174-action_168 (206) = happyGoto action_175-action_168 (207) = happyGoto action_291-action_168 (208) = happyGoto action_262-action_168 (215) = happyGoto action_176-action_168 (216) = happyGoto action_292-action_168 (217) = happyGoto action_177-action_168 (227) = happyGoto action_178-action_168 _ = happyReduce_241--action_169 _ = happyReduce_260--action_170 _ = happyReduce_273--action_171 (309) = happyShift action_288-action_171 _ = happyFail--action_172 _ = happyReduce_261--action_173 _ = happyReduce_539--action_174 _ = happyReduce_546--action_175 _ = happyReduce_553--action_176 _ = happyReduce_262--action_177 _ = happyReduce_573--action_178 _ = happyReduce_577--action_179 (245) = happyShift action_37-action_179 (253) = happyShift action_40-action_179 (265) = happyShift action_46-action_179 (272) = happyShift action_49-action_179 (273) = happyShift action_50-action_179 (274) = happyShift action_51-action_179 (275) = happyShift action_180-action_179 (276) = happyShift action_181-action_179 (277) = happyShift action_182-action_179 (280) = happyShift action_57-action_179 (281) = happyShift action_58-action_179 (282) = happyShift action_59-action_179 (283) = happyShift action_60-action_179 (286) = happyShift action_62-action_179 (336) = happyShift action_287-action_179 (346) = happyShift action_192-action_179 (112) = happyGoto action_284-action_179 (113) = happyGoto action_285-action_179 (215) = happyGoto action_286-action_179 (217) = happyGoto action_177-action_179 (227) = happyGoto action_178-action_179 _ = happyReduce_291--action_180 _ = happyReduce_579--action_181 _ = happyReduce_580--action_182 _ = happyReduce_578--action_183 (306) = happyShift action_283-action_183 _ = happyFail--action_184 (306) = happyShift action_282-action_184 _ = happyFail--action_185 _ = happyReduce_228--action_186 (329) = happyReduce_332-action_186 (367) = happyShift action_146-action_186 (131) = happyGoto action_277-action_186 (132) = happyGoto action_278-action_186 (133) = happyGoto action_279-action_186 (237) = happyGoto action_280-action_186 (243) = happyGoto action_281-action_186 _ = happyReduce_649--action_187 (245) = happyShift action_37-action_187 (253) = happyShift action_40-action_187 (265) = happyShift action_46-action_187 (270) = happyShift action_179-action_187 (272) = happyShift action_49-action_187 (273) = happyShift action_50-action_187 (274) = happyShift action_51-action_187 (275) = happyShift action_180-action_187 (276) = happyShift action_181-action_187 (277) = happyShift action_182-action_187 (280) = happyShift action_57-action_187 (281) = happyShift action_58-action_187 (282) = happyShift action_59-action_187 (283) = happyShift action_60-action_187 (286) = happyShift action_62-action_187 (299) = happyShift action_183-action_187 (300) = happyShift action_184-action_187 (321) = happyShift action_185-action_187 (328) = happyShift action_186-action_187 (332) = happyShift action_187-action_187 (333) = happyShift action_276-action_187 (334) = happyShift action_188-action_187 (336) = happyShift action_189-action_187 (338) = happyShift action_190-action_187 (345) = happyShift action_191-action_187 (346) = happyShift action_192-action_187 (347) = happyShift action_193-action_187 (351) = happyShift action_194-action_187 (355) = happyShift action_195-action_187 (356) = happyShift action_84-action_187 (358) = happyShift action_196-action_187 (359) = happyShift action_197-action_187 (376) = happyShift action_198-action_187 (377) = happyShift action_199-action_187 (379) = happyShift action_102-action_187 (380) = happyShift action_103-action_187 (100) = happyGoto action_164-action_187 (101) = happyGoto action_275-action_187 (103) = happyGoto action_166-action_187 (104) = happyGoto action_167-action_187 (106) = happyGoto action_168-action_187 (107) = happyGoto action_169-action_187 (142) = happyGoto action_170-action_187 (192) = happyGoto action_171-action_187 (202) = happyGoto action_172-action_187 (203) = happyGoto action_173-action_187 (205) = happyGoto action_174-action_187 (206) = happyGoto action_175-action_187 (215) = happyGoto action_176-action_187 (217) = happyGoto action_177-action_187 (227) = happyGoto action_178-action_187 _ = happyFail--action_188 (245) = happyShift action_37-action_188 (253) = happyShift action_40-action_188 (265) = happyShift action_46-action_188 (270) = happyShift action_179-action_188 (272) = happyShift action_49-action_188 (273) = happyShift action_50-action_188 (274) = happyShift action_51-action_188 (275) = happyShift action_180-action_188 (276) = happyShift action_181-action_188 (277) = happyShift action_182-action_188 (280) = happyShift action_57-action_188 (281) = happyShift action_58-action_188 (282) = happyShift action_59-action_188 (283) = happyShift action_60-action_188 (286) = happyShift action_62-action_188 (299) = happyShift action_183-action_188 (300) = happyShift action_184-action_188 (321) = happyShift action_185-action_188 (328) = happyShift action_186-action_188 (332) = happyShift action_187-action_188 (334) = happyShift action_188-action_188 (335) = happyShift action_274-action_188 (336) = happyShift action_189-action_188 (338) = happyShift action_190-action_188 (345) = happyShift action_191-action_188 (346) = happyShift action_192-action_188 (347) = happyShift action_193-action_188 (351) = happyShift action_194-action_188 (355) = happyShift action_195-action_188 (356) = happyShift action_84-action_188 (358) = happyShift action_196-action_188 (359) = happyShift action_197-action_188 (376) = happyShift action_198-action_188 (377) = happyShift action_199-action_188 (379) = happyShift action_102-action_188 (380) = happyShift action_103-action_188 (100) = happyGoto action_164-action_188 (101) = happyGoto action_273-action_188 (103) = happyGoto action_166-action_188 (104) = happyGoto action_167-action_188 (106) = happyGoto action_168-action_188 (107) = happyGoto action_169-action_188 (142) = happyGoto action_170-action_188 (192) = happyGoto action_171-action_188 (202) = happyGoto action_172-action_188 (203) = happyGoto action_173-action_188 (205) = happyGoto action_174-action_188 (206) = happyGoto action_175-action_188 (215) = happyGoto action_176-action_188 (217) = happyGoto action_177-action_188 (227) = happyGoto action_178-action_188 _ = happyFail--action_189 (245) = happyShift action_37-action_189 (253) = happyShift action_40-action_189 (265) = happyShift action_46-action_189 (270) = happyShift action_179-action_189 (272) = happyShift action_49-action_189 (273) = happyShift action_50-action_189 (274) = happyShift action_51-action_189 (275) = happyShift action_180-action_189 (276) = happyShift action_181-action_189 (277) = happyShift action_182-action_189 (280) = happyShift action_57-action_189 (281) = happyShift action_58-action_189 (282) = happyShift action_59-action_189 (283) = happyShift action_60-action_189 (286) = happyShift action_62-action_189 (299) = happyShift action_183-action_189 (300) = happyShift action_184-action_189 (315) = happyShift action_264-action_189 (317) = happyShift action_265-action_189 (318) = happyShift action_266-action_189 (321) = happyShift action_185-action_189 (322) = happyShift action_267-action_189 (328) = happyShift action_186-action_189 (332) = happyShift action_187-action_189 (334) = happyShift action_188-action_189 (336) = happyShift action_189-action_189 (337) = happyShift action_268-action_189 (338) = happyShift action_190-action_189 (343) = happyShift action_244-action_189 (345) = happyShift action_191-action_189 (346) = happyShift action_192-action_189 (347) = happyShift action_193-action_189 (348) = happyShift action_269-action_189 (349) = happyShift action_270-action_189 (351) = happyShift action_194-action_189 (352) = happyShift action_271-action_189 (353) = happyShift action_272-action_189 (355) = happyShift action_195-action_189 (356) = happyShift action_84-action_189 (358) = happyShift action_196-action_189 (359) = happyShift action_197-action_189 (376) = happyShift action_198-action_189 (377) = happyShift action_199-action_189 (379) = happyShift action_102-action_189 (380) = happyShift action_103-action_189 (100) = happyGoto action_164-action_189 (101) = happyGoto action_260-action_189 (103) = happyGoto action_166-action_189 (104) = happyGoto action_167-action_189 (106) = happyGoto action_168-action_189 (107) = happyGoto action_169-action_189 (142) = happyGoto action_170-action_189 (192) = happyGoto action_171-action_189 (202) = happyGoto action_172-action_189 (203) = happyGoto action_173-action_189 (205) = happyGoto action_174-action_189 (206) = happyGoto action_175-action_189 (207) = happyGoto action_261-action_189 (208) = happyGoto action_262-action_189 (215) = happyGoto action_176-action_189 (217) = happyGoto action_177-action_189 (227) = happyGoto action_178-action_189 (236) = happyGoto action_263-action_189 _ = happyFail--action_190 (245) = happyShift action_37-action_190 (253) = happyShift action_40-action_190 (265) = happyShift action_46-action_190 (270) = happyShift action_179-action_190 (272) = happyShift action_49-action_190 (273) = happyShift action_50-action_190 (274) = happyShift action_51-action_190 (275) = happyShift action_180-action_190 (276) = happyShift action_181-action_190 (277) = happyShift action_182-action_190 (280) = happyShift action_57-action_190 (281) = happyShift action_58-action_190 (282) = happyShift action_59-action_190 (283) = happyShift action_60-action_190 (286) = happyShift action_62-action_190 (299) = happyShift action_183-action_190 (300) = happyShift action_184-action_190 (321) = happyShift action_185-action_190 (328) = happyShift action_186-action_190 (332) = happyShift action_187-action_190 (334) = happyShift action_188-action_190 (336) = happyShift action_189-action_190 (338) = happyShift action_190-action_190 (339) = happyShift action_259-action_190 (343) = happyShift action_244-action_190 (345) = happyShift action_191-action_190 (346) = happyShift action_192-action_190 (347) = happyShift action_193-action_190 (351) = happyShift action_194-action_190 (355) = happyShift action_195-action_190 (356) = happyShift action_84-action_190 (358) = happyShift action_196-action_190 (359) = happyShift action_197-action_190 (376) = happyShift action_198-action_190 (377) = happyShift action_199-action_190 (379) = happyShift action_102-action_190 (380) = happyShift action_103-action_190 (100) = happyGoto action_164-action_190 (101) = happyGoto action_256-action_190 (103) = happyGoto action_166-action_190 (104) = happyGoto action_167-action_190 (106) = happyGoto action_168-action_190 (107) = happyGoto action_169-action_190 (111) = happyGoto action_257-action_190 (142) = happyGoto action_170-action_190 (192) = happyGoto action_171-action_190 (202) = happyGoto action_172-action_190 (203) = happyGoto action_173-action_190 (205) = happyGoto action_174-action_190 (206) = happyGoto action_175-action_190 (215) = happyGoto action_176-action_190 (217) = happyGoto action_177-action_190 (227) = happyGoto action_178-action_190 (236) = happyGoto action_258-action_190 _ = happyFail--action_191 (332) = happyShift action_254-action_191 (336) = happyShift action_255-action_191 (347) = happyShift action_79-action_191 (351) = happyShift action_81-action_191 (355) = happyShift action_83-action_191 (229) = happyGoto action_253-action_191 (230) = happyGoto action_34-action_191 _ = happyFail--action_192 _ = happyReduce_576--action_193 _ = happyReduce_554--action_194 _ = happyReduce_551--action_195 _ = happyReduce_552--action_196 _ = happyReduce_282--action_197 _ = happyReduce_281--action_198 _ = happyReduce_275--action_199 (244) = happyShift action_36-action_199 (245) = happyShift action_37-action_199 (246) = happyShift action_38-action_199 (251) = happyShift action_39-action_199 (253) = happyShift action_40-action_199 (254) = happyShift action_41-action_199 (261) = happyShift action_45-action_199 (265) = happyShift action_46-action_199 (269) = happyShift action_47-action_199 (270) = happyShift action_48-action_199 (272) = happyShift action_49-action_199 (273) = happyShift action_50-action_199 (274) = happyShift action_51-action_199 (275) = happyShift action_52-action_199 (276) = happyShift action_53-action_199 (277) = happyShift action_54-action_199 (278) = happyShift action_55-action_199 (279) = happyShift action_56-action_199 (280) = happyShift action_57-action_199 (281) = happyShift action_58-action_199 (282) = happyShift action_59-action_199 (283) = happyShift action_60-action_199 (284) = happyShift action_61-action_199 (286) = happyShift action_62-action_199 (294) = happyShift action_66-action_199 (295) = happyShift action_67-action_199 (296) = happyShift action_68-action_199 (311) = happyShift action_69-action_199 (317) = happyShift action_70-action_199 (320) = happyShift action_71-action_199 (332) = happyShift action_72-action_199 (334) = happyShift action_73-action_199 (336) = happyShift action_107-action_199 (338) = happyShift action_75-action_199 (340) = happyShift action_76-action_199 (345) = happyShift action_77-action_199 (346) = happyShift action_78-action_199 (347) = happyShift action_79-action_199 (350) = happyShift action_80-action_199 (351) = happyShift action_81-action_199 (354) = happyShift action_82-action_199 (355) = happyShift action_83-action_199 (356) = happyShift action_84-action_199 (357) = happyShift action_85-action_199 (358) = happyShift action_86-action_199 (359) = happyShift action_87-action_199 (360) = happyShift action_88-action_199 (361) = happyShift action_89-action_199 (362) = happyShift action_90-action_199 (363) = happyShift action_91-action_199 (364) = happyShift action_92-action_199 (365) = happyShift action_93-action_199 (366) = happyShift action_94-action_199 (371) = happyShift action_95-action_199 (372) = happyShift action_96-action_199 (373) = happyShift action_97-action_199 (374) = happyShift action_98-action_199 (376) = happyShift action_99-action_199 (377) = happyShift action_100-action_199 (378) = happyShift action_101-action_199 (379) = happyShift action_102-action_199 (380) = happyShift action_103-action_199 (38) = happyGoto action_13-action_199 (142) = happyGoto action_16-action_199 (143) = happyGoto action_252-action_199 (144) = happyGoto action_105-action_199 (145) = happyGoto action_18-action_199 (147) = happyGoto action_19-action_199 (148) = happyGoto action_20-action_199 (149) = happyGoto action_21-action_199 (150) = happyGoto action_22-action_199 (151) = happyGoto action_23-action_199 (152) = happyGoto action_24-action_199 (192) = happyGoto action_25-action_199 (195) = happyGoto action_26-action_199 (198) = happyGoto action_27-action_199 (219) = happyGoto action_29-action_199 (220) = happyGoto action_30-action_199 (221) = happyGoto action_106-action_199 (227) = happyGoto action_32-action_199 (229) = happyGoto action_33-action_199 (230) = happyGoto action_34-action_199 (233) = happyGoto action_35-action_199 _ = happyFail--action_200 (381) = happyAccept-action_200 _ = happyFail--action_201 _ = happyReduce_15--action_202 _ = happyReduce_17--action_203 _ = happyReduce_16--action_204 _ = happyReduce_14--action_205 _ = happyReduce_569--action_206 _ = happyReduce_597--action_207 _ = happyReduce_596--action_208 _ = happyReduce_601--action_209 _ = happyReduce_604--action_210 _ = happyReduce_534--action_211 _ = happyReduce_623--action_212 _ = happyReduce_626--action_213 _ = happyReduce_602--action_214 _ = happyReduce_616--action_215 _ = happyReduce_618--action_216 _ = happyReduce_617--action_217 (333) = happyShift action_251-action_217 _ = happyFail--action_218 (308) = happyShift action_212-action_218 (315) = happyShift action_249-action_218 (320) = happyShift action_213-action_218 (321) = happyShift action_214-action_218 (322) = happyShift action_215-action_218 (327) = happyShift action_216-action_218 (337) = happyShift action_250-action_218 (343) = happyShift action_244-action_218 (348) = happyShift action_221-action_218 (349) = happyShift action_222-action_218 (352) = happyShift action_223-action_218 (353) = happyShift action_224-action_218 (224) = happyGoto action_245-action_218 (225) = happyGoto action_246-action_218 (226) = happyGoto action_208-action_218 (228) = happyGoto action_209-action_218 (231) = happyGoto action_247-action_218 (232) = happyGoto action_211-action_218 (236) = happyGoto action_248-action_218 _ = happyFail--action_219 (339) = happyShift action_243-action_219 (343) = happyShift action_244-action_219 (236) = happyGoto action_242-action_219 _ = happyFail--action_220 (245) = happyShift action_37-action_220 (253) = happyShift action_40-action_220 (265) = happyShift action_46-action_220 (270) = happyShift action_48-action_220 (272) = happyShift action_49-action_220 (273) = happyShift action_50-action_220 (274) = happyShift action_51-action_220 (275) = happyShift action_52-action_220 (276) = happyShift action_53-action_220 (277) = happyShift action_54-action_220 (279) = happyShift action_56-action_220 (280) = happyShift action_57-action_220 (281) = happyShift action_58-action_220 (282) = happyShift action_59-action_220 (283) = happyShift action_60-action_220 (286) = happyShift action_62-action_220 (346) = happyShift action_78-action_220 (347) = happyShift action_79-action_220 (350) = happyShift action_80-action_220 (351) = happyShift action_81-action_220 (354) = happyShift action_82-action_220 (355) = happyShift action_83-action_220 (220) = happyGoto action_240-action_220 (221) = happyGoto action_106-action_220 (227) = happyGoto action_32-action_220 (229) = happyGoto action_241-action_220 (230) = happyGoto action_34-action_220 _ = happyFail--action_221 _ = happyReduce_603--action_222 _ = happyReduce_625--action_223 _ = happyReduce_600--action_224 _ = happyReduce_624--action_225 (381) = happyAccept-action_225 _ = happyFail--action_226 _ = happyReduce_496--action_227 (381) = happyAccept-action_227 _ = happyFail--action_228 (262) = happyShift action_239-action_228 _ = happyFail--action_229 (244) = happyShift action_36-action_229 (245) = happyShift action_37-action_229 (246) = happyShift action_38-action_229 (247) = happyShift action_130-action_229 (248) = happyShift action_131-action_229 (249) = happyShift action_132-action_229 (250) = happyShift action_133-action_229 (251) = happyShift action_39-action_229 (253) = happyShift action_40-action_229 (254) = happyShift action_41-action_229 (255) = happyShift action_151-action_229 (257) = happyShift action_42-action_229 (258) = happyShift action_43-action_229 (259) = happyShift action_44-action_229 (260) = happyShift action_134-action_229 (261) = happyShift action_45-action_229 (263) = happyShift action_135-action_229 (265) = happyShift action_46-action_229 (267) = happyShift action_136-action_229 (269) = happyShift action_47-action_229 (270) = happyShift action_48-action_229 (271) = happyShift action_137-action_229 (272) = happyShift action_49-action_229 (273) = happyShift action_50-action_229 (274) = happyShift action_51-action_229 (275) = happyShift action_52-action_229 (276) = happyShift action_53-action_229 (277) = happyShift action_54-action_229 (278) = happyShift action_55-action_229 (279) = happyShift action_56-action_229 (280) = happyShift action_57-action_229 (281) = happyShift action_58-action_229 (282) = happyShift action_59-action_229 (283) = happyShift action_60-action_229 (284) = happyShift action_61-action_229 (286) = happyShift action_62-action_229 (289) = happyShift action_63-action_229 (290) = happyShift action_64-action_229 (291) = happyShift action_65-action_229 (293) = happyShift action_138-action_229 (294) = happyShift action_66-action_229 (295) = happyShift action_67-action_229 (296) = happyShift action_68-action_229 (297) = happyShift action_139-action_229 (298) = happyShift action_140-action_229 (301) = happyShift action_141-action_229 (302) = happyShift action_142-action_229 (303) = happyShift action_143-action_229 (304) = happyShift action_144-action_229 (311) = happyShift action_69-action_229 (317) = happyShift action_70-action_229 (320) = happyShift action_71-action_229 (321) = happyShift action_145-action_229 (332) = happyShift action_72-action_229 (334) = happyShift action_73-action_229 (336) = happyShift action_74-action_229 (338) = happyShift action_75-action_229 (340) = happyShift action_76-action_229 (345) = happyShift action_77-action_229 (346) = happyShift action_78-action_229 (347) = happyShift action_79-action_229 (350) = happyShift action_80-action_229 (351) = happyShift action_81-action_229 (354) = happyShift action_82-action_229 (355) = happyShift action_83-action_229 (356) = happyShift action_84-action_229 (357) = happyShift action_85-action_229 (358) = happyShift action_86-action_229 (359) = happyShift action_87-action_229 (360) = happyShift action_88-action_229 (361) = happyShift action_89-action_229 (362) = happyShift action_90-action_229 (363) = happyShift action_91-action_229 (364) = happyShift action_92-action_229 (365) = happyShift action_93-action_229 (366) = happyShift action_94-action_229 (367) = happyShift action_146-action_229 (368) = happyShift action_147-action_229 (369) = happyShift action_148-action_229 (370) = happyShift action_149-action_229 (371) = happyShift action_95-action_229 (372) = happyShift action_96-action_229 (373) = happyShift action_97-action_229 (374) = happyShift action_98-action_229 (376) = happyShift action_99-action_229 (377) = happyShift action_100-action_229 (378) = happyShift action_101-action_229 (379) = happyShift action_102-action_229 (380) = happyShift action_103-action_229 (24) = happyGoto action_238-action_229 (25) = happyGoto action_233-action_229 (38) = happyGoto action_13-action_229 (39) = happyGoto action_234-action_229 (40) = happyGoto action_235-action_229 (49) = happyGoto action_14-action_229 (51) = happyGoto action_236-action_229 (52) = happyGoto action_237-action_229 (53) = happyGoto action_115-action_229 (54) = happyGoto action_116-action_229 (55) = happyGoto action_117-action_229 (58) = happyGoto action_118-action_229 (62) = happyGoto action_119-action_229 (88) = happyGoto action_120-action_229 (135) = happyGoto action_121-action_229 (136) = happyGoto action_122-action_229 (137) = happyGoto action_123-action_229 (141) = happyGoto action_124-action_229 (142) = happyGoto action_16-action_229 (144) = happyGoto action_125-action_229 (145) = happyGoto action_18-action_229 (147) = happyGoto action_19-action_229 (148) = happyGoto action_20-action_229 (149) = happyGoto action_21-action_229 (150) = happyGoto action_22-action_229 (151) = happyGoto action_23-action_229 (152) = happyGoto action_24-action_229 (192) = happyGoto action_25-action_229 (195) = happyGoto action_26-action_229 (198) = happyGoto action_27-action_229 (218) = happyGoto action_28-action_229 (219) = happyGoto action_29-action_229 (220) = happyGoto action_30-action_229 (221) = happyGoto action_31-action_229 (227) = happyGoto action_32-action_229 (229) = happyGoto action_33-action_229 (230) = happyGoto action_34-action_229 (233) = happyGoto action_35-action_229 (237) = happyGoto action_126-action_229 (238) = happyGoto action_127-action_229 (239) = happyGoto action_128-action_229 (240) = happyGoto action_129-action_229 _ = happyReduce_68--action_230 _ = happyReduce_20--action_231 (244) = happyShift action_36-action_231 (245) = happyShift action_37-action_231 (246) = happyShift action_38-action_231 (247) = happyShift action_130-action_231 (248) = happyShift action_131-action_231 (249) = happyShift action_132-action_231 (250) = happyShift action_133-action_231 (251) = happyShift action_39-action_231 (253) = happyShift action_40-action_231 (254) = happyShift action_41-action_231 (255) = happyShift action_151-action_231 (257) = happyShift action_42-action_231 (258) = happyShift action_43-action_231 (259) = happyShift action_44-action_231 (260) = happyShift action_134-action_231 (261) = happyShift action_45-action_231 (263) = happyShift action_135-action_231 (265) = happyShift action_46-action_231 (267) = happyShift action_136-action_231 (269) = happyShift action_47-action_231 (270) = happyShift action_48-action_231 (271) = happyShift action_137-action_231 (272) = happyShift action_49-action_231 (273) = happyShift action_50-action_231 (274) = happyShift action_51-action_231 (275) = happyShift action_52-action_231 (276) = happyShift action_53-action_231 (277) = happyShift action_54-action_231 (278) = happyShift action_55-action_231 (279) = happyShift action_56-action_231 (280) = happyShift action_57-action_231 (281) = happyShift action_58-action_231 (282) = happyShift action_59-action_231 (283) = happyShift action_60-action_231 (284) = happyShift action_61-action_231 (286) = happyShift action_62-action_231 (289) = happyShift action_63-action_231 (290) = happyShift action_64-action_231 (291) = happyShift action_65-action_231 (293) = happyShift action_138-action_231 (294) = happyShift action_66-action_231 (295) = happyShift action_67-action_231 (296) = happyShift action_68-action_231 (297) = happyShift action_139-action_231 (298) = happyShift action_140-action_231 (301) = happyShift action_141-action_231 (302) = happyShift action_142-action_231 (303) = happyShift action_143-action_231 (304) = happyShift action_144-action_231 (311) = happyShift action_69-action_231 (317) = happyShift action_70-action_231 (320) = happyShift action_71-action_231 (321) = happyShift action_145-action_231 (332) = happyShift action_72-action_231 (334) = happyShift action_73-action_231 (336) = happyShift action_74-action_231 (338) = happyShift action_75-action_231 (340) = happyShift action_76-action_231 (345) = happyShift action_77-action_231 (346) = happyShift action_78-action_231 (347) = happyShift action_79-action_231 (350) = happyShift action_80-action_231 (351) = happyShift action_81-action_231 (354) = happyShift action_82-action_231 (355) = happyShift action_83-action_231 (356) = happyShift action_84-action_231 (357) = happyShift action_85-action_231 (358) = happyShift action_86-action_231 (359) = happyShift action_87-action_231 (360) = happyShift action_88-action_231 (361) = happyShift action_89-action_231 (362) = happyShift action_90-action_231 (363) = happyShift action_91-action_231 (364) = happyShift action_92-action_231 (365) = happyShift action_93-action_231 (366) = happyShift action_94-action_231 (367) = happyShift action_146-action_231 (368) = happyShift action_147-action_231 (369) = happyShift action_148-action_231 (370) = happyShift action_149-action_231 (371) = happyShift action_95-action_231 (372) = happyShift action_96-action_231 (373) = happyShift action_97-action_231 (374) = happyShift action_98-action_231 (376) = happyShift action_99-action_231 (377) = happyShift action_100-action_231 (378) = happyShift action_101-action_231 (379) = happyShift action_102-action_231 (380) = happyShift action_103-action_231 (24) = happyGoto action_232-action_231 (25) = happyGoto action_233-action_231 (38) = happyGoto action_13-action_231 (39) = happyGoto action_234-action_231 (40) = happyGoto action_235-action_231 (49) = happyGoto action_14-action_231 (51) = happyGoto action_236-action_231 (52) = happyGoto action_237-action_231 (53) = happyGoto action_115-action_231 (54) = happyGoto action_116-action_231 (55) = happyGoto action_117-action_231 (58) = happyGoto action_118-action_231 (62) = happyGoto action_119-action_231 (88) = happyGoto action_120-action_231 (135) = happyGoto action_121-action_231 (136) = happyGoto action_122-action_231 (137) = happyGoto action_123-action_231 (141) = happyGoto action_124-action_231 (142) = happyGoto action_16-action_231 (144) = happyGoto action_125-action_231 (145) = happyGoto action_18-action_231 (147) = happyGoto action_19-action_231 (148) = happyGoto action_20-action_231 (149) = happyGoto action_21-action_231 (150) = happyGoto action_22-action_231 (151) = happyGoto action_23-action_231 (152) = happyGoto action_24-action_231 (192) = happyGoto action_25-action_231 (195) = happyGoto action_26-action_231 (198) = happyGoto action_27-action_231 (218) = happyGoto action_28-action_231 (219) = happyGoto action_29-action_231 (220) = happyGoto action_30-action_231 (221) = happyGoto action_31-action_231 (227) = happyGoto action_32-action_231 (229) = happyGoto action_33-action_231 (230) = happyGoto action_34-action_231 (233) = happyGoto action_35-action_231 (237) = happyGoto action_126-action_231 (238) = happyGoto action_127-action_231 (239) = happyGoto action_128-action_231 (240) = happyGoto action_129-action_231 _ = happyReduce_68--action_232 (329) = happyShift action_668-action_232 _ = happyFail--action_233 _ = happyReduce_33--action_234 (342) = happyShift action_667-action_234 _ = happyReduce_31--action_235 _ = happyReduce_67--action_236 (342) = happyShift action_666-action_236 _ = happyReduce_34--action_237 _ = happyReduce_93--action_238 (1) = happyShift action_664-action_238 (331) = happyShift action_665-action_238 (234) = happyGoto action_663-action_238 _ = happyFail--action_239 (347) = happyShift action_544-action_239 (351) = happyShift action_545-action_239 (235) = happyGoto action_662-action_239 _ = happyFail--action_240 (344) = happyShift action_661-action_240 _ = happyFail--action_241 (344) = happyShift action_660-action_241 _ = happyFail--action_242 (339) = happyShift action_512-action_242 (343) = happyShift action_513-action_242 _ = happyFail--action_243 _ = happyReduce_529--action_244 _ = happyReduce_640--action_245 (337) = happyShift action_537-action_245 _ = happyFail--action_246 (337) = happyShift action_659-action_246 _ = happyFail--action_247 (337) = happyShift action_536-action_247 _ = happyFail--action_248 (337) = happyShift action_535-action_248 (343) = happyShift action_513-action_248 _ = happyFail--action_249 (337) = happyShift action_658-action_249 _ = happyFail--action_250 _ = happyReduce_527--action_251 _ = happyReduce_531--action_252 (337) = happyShift action_657-action_252 _ = happyFail--action_253 _ = happyReduce_276--action_254 (245) = happyShift action_37-action_254 (253) = happyShift action_40-action_254 (265) = happyShift action_46-action_254 (270) = happyShift action_179-action_254 (272) = happyShift action_49-action_254 (273) = happyShift action_50-action_254 (274) = happyShift action_51-action_254 (275) = happyShift action_180-action_254 (276) = happyShift action_181-action_254 (277) = happyShift action_182-action_254 (280) = happyShift action_57-action_254 (281) = happyShift action_58-action_254 (282) = happyShift action_59-action_254 (283) = happyShift action_60-action_254 (286) = happyShift action_62-action_254 (299) = happyShift action_183-action_254 (300) = happyShift action_184-action_254 (321) = happyShift action_185-action_254 (328) = happyShift action_186-action_254 (332) = happyShift action_187-action_254 (334) = happyShift action_188-action_254 (336) = happyShift action_189-action_254 (338) = happyShift action_190-action_254 (345) = happyShift action_191-action_254 (346) = happyShift action_192-action_254 (347) = happyShift action_193-action_254 (351) = happyShift action_194-action_254 (355) = happyShift action_195-action_254 (356) = happyShift action_84-action_254 (358) = happyShift action_196-action_254 (359) = happyShift action_197-action_254 (376) = happyShift action_198-action_254 (377) = happyShift action_199-action_254 (379) = happyShift action_102-action_254 (380) = happyShift action_103-action_254 (100) = happyGoto action_164-action_254 (101) = happyGoto action_256-action_254 (103) = happyGoto action_166-action_254 (104) = happyGoto action_167-action_254 (106) = happyGoto action_168-action_254 (107) = happyGoto action_169-action_254 (110) = happyGoto action_656-action_254 (111) = happyGoto action_565-action_254 (142) = happyGoto action_170-action_254 (192) = happyGoto action_171-action_254 (202) = happyGoto action_172-action_254 (203) = happyGoto action_173-action_254 (205) = happyGoto action_174-action_254 (206) = happyGoto action_175-action_254 (215) = happyGoto action_176-action_254 (217) = happyGoto action_177-action_254 (227) = happyGoto action_178-action_254 _ = happyReduce_287--action_255 (245) = happyShift action_37-action_255 (253) = happyShift action_40-action_255 (265) = happyShift action_46-action_255 (270) = happyShift action_179-action_255 (272) = happyShift action_49-action_255 (273) = happyShift action_50-action_255 (274) = happyShift action_51-action_255 (275) = happyShift action_180-action_255 (276) = happyShift action_181-action_255 (277) = happyShift action_182-action_255 (280) = happyShift action_57-action_255 (281) = happyShift action_58-action_255 (282) = happyShift action_59-action_255 (283) = happyShift action_60-action_255 (286) = happyShift action_62-action_255 (299) = happyShift action_183-action_255 (300) = happyShift action_184-action_255 (321) = happyShift action_185-action_255 (328) = happyShift action_186-action_255 (332) = happyShift action_187-action_255 (334) = happyShift action_188-action_255 (336) = happyShift action_189-action_255 (337) = happyShift action_655-action_255 (338) = happyShift action_190-action_255 (345) = happyShift action_191-action_255 (346) = happyShift action_192-action_255 (347) = happyShift action_193-action_255 (351) = happyShift action_194-action_255 (355) = happyShift action_195-action_255 (356) = happyShift action_84-action_255 (358) = happyShift action_196-action_255 (359) = happyShift action_197-action_255 (376) = happyShift action_198-action_255 (377) = happyShift action_199-action_255 (379) = happyShift action_102-action_255 (380) = happyShift action_103-action_255 (100) = happyGoto action_164-action_255 (101) = happyGoto action_654-action_255 (103) = happyGoto action_166-action_255 (104) = happyGoto action_167-action_255 (106) = happyGoto action_168-action_255 (107) = happyGoto action_169-action_255 (142) = happyGoto action_170-action_255 (192) = happyGoto action_171-action_255 (202) = happyGoto action_172-action_255 (203) = happyGoto action_173-action_255 (205) = happyGoto action_174-action_255 (206) = happyGoto action_175-action_255 (215) = happyGoto action_176-action_255 (217) = happyGoto action_177-action_255 (227) = happyGoto action_178-action_255 _ = happyFail--action_256 (343) = happyShift action_653-action_256 _ = happyReduce_288--action_257 (339) = happyShift action_652-action_257 _ = happyFail--action_258 (339) = happyShift action_651-action_258 (343) = happyShift action_513-action_258 _ = happyFail--action_259 _ = happyReduce_267--action_260 (309) = happyShift action_648-action_260 (337) = happyShift action_649-action_260 (343) = happyShift action_650-action_260 _ = happyFail--action_261 (337) = happyShift action_647-action_261 _ = happyFail--action_262 _ = happyReduce_557--action_263 (337) = happyShift action_646-action_263 (343) = happyShift action_513-action_263 _ = happyFail--action_264 (337) = happyShift action_645-action_264 _ = happyFail--action_265 (337) = happyShift action_644-action_265 _ = happyFail--action_266 (337) = happyShift action_643-action_266 _ = happyFail--action_267 _ = happyReduce_560--action_268 _ = happyReduce_265--action_269 _ = happyReduce_559--action_270 _ = happyReduce_558--action_271 _ = happyReduce_556--action_272 _ = happyReduce_555--action_273 (335) = happyShift action_642-action_273 _ = happyFail--action_274 _ = happyReduce_544--action_275 (333) = happyShift action_640-action_275 (343) = happyShift action_641-action_275 _ = happyFail--action_276 _ = happyReduce_543--action_277 (329) = happyShift action_639-action_277 _ = happyFail--action_278 _ = happyReduce_333--action_279 (343) = happyReduce_649-action_279 (367) = happyShift action_146-action_279 (237) = happyGoto action_280-action_279 (243) = happyGoto action_638-action_279 _ = happyReduce_335--action_280 _ = happyReduce_648--action_281 (245) = happyShift action_37-action_281 (253) = happyShift action_40-action_281 (265) = happyShift action_46-action_281 (270) = happyShift action_48-action_281 (272) = happyShift action_49-action_281 (273) = happyShift action_50-action_281 (274) = happyShift action_51-action_281 (275) = happyShift action_52-action_281 (276) = happyShift action_53-action_281 (277) = happyShift action_54-action_281 (279) = happyShift action_56-action_281 (280) = happyShift action_57-action_281 (281) = happyShift action_58-action_281 (282) = happyShift action_59-action_281 (283) = happyShift action_60-action_281 (286) = happyShift action_62-action_281 (336) = happyShift action_473-action_281 (346) = happyShift action_78-action_281 (97) = happyGoto action_637-action_281 (218) = happyGoto action_472-action_281 (221) = happyGoto action_327-action_281 (227) = happyGoto action_32-action_281 _ = happyFail--action_282 (321) = happyShift action_636-action_282 _ = happyFail--action_283 (321) = happyShift action_635-action_283 _ = happyFail--action_284 (327) = happyShift action_634-action_284 _ = happyFail--action_285 (245) = happyShift action_37-action_285 (253) = happyShift action_40-action_285 (265) = happyShift action_46-action_285 (272) = happyShift action_49-action_285 (273) = happyShift action_50-action_285 (274) = happyShift action_51-action_285 (275) = happyShift action_180-action_285 (276) = happyShift action_181-action_285 (277) = happyShift action_182-action_285 (280) = happyShift action_57-action_285 (281) = happyShift action_58-action_285 (282) = happyShift action_59-action_285 (283) = happyShift action_60-action_285 (286) = happyShift action_62-action_285 (336) = happyShift action_287-action_285 (346) = happyShift action_192-action_285 (112) = happyGoto action_633-action_285 (113) = happyGoto action_285-action_285 (215) = happyGoto action_286-action_285 (217) = happyGoto action_177-action_285 (227) = happyGoto action_178-action_285 _ = happyReduce_291--action_286 _ = happyReduce_292--action_287 (245) = happyShift action_37-action_287 (253) = happyShift action_40-action_287 (265) = happyShift action_46-action_287 (272) = happyShift action_49-action_287 (273) = happyShift action_50-action_287 (274) = happyShift action_51-action_287 (275) = happyShift action_180-action_287 (276) = happyShift action_181-action_287 (277) = happyShift action_182-action_287 (280) = happyShift action_57-action_287 (281) = happyShift action_58-action_287 (282) = happyShift action_59-action_287 (283) = happyShift action_60-action_287 (286) = happyShift action_62-action_287 (346) = happyShift action_192-action_287 (215) = happyGoto action_632-action_287 (217) = happyGoto action_177-action_287 (227) = happyGoto action_178-action_287 _ = happyFail--action_288 (245) = happyShift action_37-action_288 (253) = happyShift action_40-action_288 (265) = happyShift action_46-action_288 (272) = happyShift action_49-action_288 (273) = happyShift action_50-action_288 (274) = happyShift action_51-action_288 (275) = happyShift action_180-action_288 (276) = happyShift action_181-action_288 (277) = happyShift action_182-action_288 (280) = happyShift action_57-action_288 (281) = happyShift action_58-action_288 (282) = happyShift action_59-action_288 (283) = happyShift action_60-action_288 (286) = happyShift action_62-action_288 (299) = happyShift action_183-action_288 (300) = happyShift action_184-action_288 (321) = happyShift action_185-action_288 (328) = happyShift action_186-action_288 (332) = happyShift action_187-action_288 (334) = happyShift action_188-action_288 (336) = happyShift action_189-action_288 (338) = happyShift action_190-action_288 (345) = happyShift action_191-action_288 (346) = happyShift action_192-action_288 (347) = happyShift action_193-action_288 (351) = happyShift action_194-action_288 (355) = happyShift action_195-action_288 (358) = happyShift action_196-action_288 (359) = happyShift action_197-action_288 (376) = happyShift action_198-action_288 (377) = happyShift action_199-action_288 (379) = happyShift action_102-action_288 (380) = happyShift action_103-action_288 (100) = happyGoto action_164-action_288 (104) = happyGoto action_631-action_288 (106) = happyGoto action_346-action_288 (107) = happyGoto action_169-action_288 (142) = happyGoto action_170-action_288 (202) = happyGoto action_172-action_288 (203) = happyGoto action_173-action_288 (205) = happyGoto action_174-action_288 (206) = happyGoto action_175-action_288 (215) = happyGoto action_176-action_288 (217) = happyGoto action_177-action_288 (227) = happyGoto action_178-action_288 _ = happyFail--action_289 _ = happyReduce_259--action_290 (245) = happyShift action_37-action_290 (253) = happyShift action_40-action_290 (265) = happyShift action_46-action_290 (272) = happyShift action_49-action_290 (273) = happyShift action_50-action_290 (274) = happyShift action_51-action_290 (275) = happyShift action_180-action_290 (276) = happyShift action_181-action_290 (277) = happyShift action_182-action_290 (280) = happyShift action_57-action_290 (281) = happyShift action_58-action_290 (282) = happyShift action_59-action_290 (283) = happyShift action_60-action_290 (286) = happyShift action_62-action_290 (299) = happyShift action_183-action_290 (300) = happyShift action_184-action_290 (321) = happyShift action_185-action_290 (328) = happyShift action_186-action_290 (332) = happyShift action_187-action_290 (334) = happyShift action_188-action_290 (336) = happyShift action_189-action_290 (338) = happyShift action_190-action_290 (345) = happyShift action_191-action_290 (346) = happyShift action_192-action_290 (347) = happyShift action_193-action_290 (351) = happyShift action_194-action_290 (355) = happyShift action_195-action_290 (358) = happyShift action_196-action_290 (359) = happyShift action_197-action_290 (376) = happyShift action_198-action_290 (377) = happyShift action_199-action_290 (379) = happyShift action_102-action_290 (380) = happyShift action_103-action_290 (100) = happyGoto action_164-action_290 (104) = happyGoto action_630-action_290 (106) = happyGoto action_346-action_290 (107) = happyGoto action_169-action_290 (142) = happyGoto action_170-action_290 (202) = happyGoto action_172-action_290 (203) = happyGoto action_173-action_290 (205) = happyGoto action_174-action_290 (206) = happyGoto action_175-action_290 (215) = happyGoto action_176-action_290 (217) = happyGoto action_177-action_290 (227) = happyGoto action_178-action_290 _ = happyFail--action_291 _ = happyReduce_549--action_292 (245) = happyShift action_37-action_292 (253) = happyShift action_40-action_292 (265) = happyShift action_46-action_292 (272) = happyShift action_49-action_292 (273) = happyShift action_50-action_292 (274) = happyShift action_51-action_292 (275) = happyShift action_180-action_292 (276) = happyShift action_181-action_292 (277) = happyShift action_182-action_292 (280) = happyShift action_57-action_292 (281) = happyShift action_58-action_292 (282) = happyShift action_59-action_292 (283) = happyShift action_60-action_292 (286) = happyShift action_62-action_292 (299) = happyShift action_183-action_292 (300) = happyShift action_184-action_292 (321) = happyShift action_185-action_292 (328) = happyShift action_186-action_292 (332) = happyShift action_187-action_292 (334) = happyShift action_188-action_292 (336) = happyShift action_189-action_292 (338) = happyShift action_190-action_292 (345) = happyShift action_191-action_292 (346) = happyShift action_192-action_292 (347) = happyShift action_193-action_292 (351) = happyShift action_194-action_292 (355) = happyShift action_195-action_292 (358) = happyShift action_196-action_292 (359) = happyShift action_197-action_292 (376) = happyShift action_198-action_292 (377) = happyShift action_199-action_292 (379) = happyShift action_102-action_292 (380) = happyShift action_103-action_292 (100) = happyGoto action_164-action_292 (104) = happyGoto action_629-action_292 (106) = happyGoto action_346-action_292 (107) = happyGoto action_169-action_292 (142) = happyGoto action_170-action_292 (202) = happyGoto action_172-action_292 (203) = happyGoto action_173-action_292 (205) = happyGoto action_174-action_292 (206) = happyGoto action_175-action_292 (215) = happyGoto action_176-action_292 (217) = happyGoto action_177-action_292 (227) = happyGoto action_178-action_292 _ = happyFail--action_293 (245) = happyShift action_37-action_293 (253) = happyShift action_40-action_293 (265) = happyShift action_46-action_293 (270) = happyShift action_179-action_293 (272) = happyShift action_49-action_293 (273) = happyShift action_50-action_293 (274) = happyShift action_51-action_293 (275) = happyShift action_180-action_293 (276) = happyShift action_181-action_293 (277) = happyShift action_182-action_293 (280) = happyShift action_57-action_293 (281) = happyShift action_58-action_293 (282) = happyShift action_59-action_293 (283) = happyShift action_60-action_293 (286) = happyShift action_62-action_293 (299) = happyShift action_183-action_293 (300) = happyShift action_184-action_293 (321) = happyShift action_185-action_293 (328) = happyShift action_186-action_293 (332) = happyShift action_187-action_293 (334) = happyShift action_188-action_293 (336) = happyShift action_189-action_293 (338) = happyShift action_190-action_293 (345) = happyShift action_191-action_293 (346) = happyShift action_192-action_293 (347) = happyShift action_193-action_293 (351) = happyShift action_194-action_293 (355) = happyShift action_195-action_293 (356) = happyShift action_84-action_293 (358) = happyShift action_196-action_293 (359) = happyShift action_197-action_293 (376) = happyShift action_198-action_293 (377) = happyShift action_199-action_293 (379) = happyShift action_102-action_293 (380) = happyShift action_103-action_293 (100) = happyGoto action_164-action_293 (101) = happyGoto action_628-action_293 (103) = happyGoto action_166-action_293 (104) = happyGoto action_167-action_293 (106) = happyGoto action_168-action_293 (107) = happyGoto action_169-action_293 (142) = happyGoto action_170-action_293 (192) = happyGoto action_171-action_293 (202) = happyGoto action_172-action_293 (203) = happyGoto action_173-action_293 (205) = happyGoto action_174-action_293 (206) = happyGoto action_175-action_293 (215) = happyGoto action_176-action_293 (217) = happyGoto action_177-action_293 (227) = happyGoto action_178-action_293 _ = happyFail--action_294 (245) = happyShift action_37-action_294 (253) = happyShift action_40-action_294 (265) = happyShift action_46-action_294 (272) = happyShift action_49-action_294 (273) = happyShift action_50-action_294 (274) = happyShift action_51-action_294 (275) = happyShift action_180-action_294 (276) = happyShift action_181-action_294 (277) = happyShift action_182-action_294 (280) = happyShift action_57-action_294 (281) = happyShift action_58-action_294 (282) = happyShift action_59-action_294 (283) = happyShift action_60-action_294 (286) = happyShift action_62-action_294 (299) = happyShift action_183-action_294 (300) = happyShift action_184-action_294 (321) = happyShift action_185-action_294 (328) = happyShift action_186-action_294 (332) = happyShift action_187-action_294 (334) = happyShift action_188-action_294 (336) = happyShift action_189-action_294 (338) = happyShift action_190-action_294 (345) = happyShift action_191-action_294 (346) = happyShift action_192-action_294 (347) = happyShift action_193-action_294 (351) = happyShift action_194-action_294 (355) = happyShift action_195-action_294 (358) = happyShift action_196-action_294 (359) = happyShift action_197-action_294 (376) = happyShift action_198-action_294 (377) = happyShift action_199-action_294 (379) = happyShift action_102-action_294 (380) = happyShift action_103-action_294 (100) = happyGoto action_164-action_294 (106) = happyGoto action_627-action_294 (107) = happyGoto action_169-action_294 (142) = happyGoto action_170-action_294 (202) = happyGoto action_172-action_294 (203) = happyGoto action_173-action_294 (205) = happyGoto action_174-action_294 (206) = happyGoto action_175-action_294 (215) = happyGoto action_176-action_294 (217) = happyGoto action_177-action_294 (227) = happyGoto action_178-action_294 _ = happyFail--action_295 _ = happyReduce_575--action_296 (245) = happyShift action_37-action_296 (253) = happyShift action_40-action_296 (265) = happyShift action_46-action_296 (272) = happyShift action_49-action_296 (273) = happyShift action_50-action_296 (274) = happyShift action_51-action_296 (275) = happyShift action_180-action_296 (276) = happyShift action_181-action_296 (277) = happyShift action_182-action_296 (280) = happyShift action_57-action_296 (281) = happyShift action_58-action_296 (282) = happyShift action_59-action_296 (283) = happyShift action_60-action_296 (286) = happyShift action_62-action_296 (346) = happyShift action_192-action_296 (347) = happyShift action_193-action_296 (351) = happyShift action_194-action_296 (355) = happyShift action_195-action_296 (205) = happyGoto action_625-action_296 (206) = happyGoto action_175-action_296 (217) = happyGoto action_626-action_296 (227) = happyGoto action_178-action_296 _ = happyFail--action_297 (308) = happyShift action_212-action_297 (320) = happyShift action_213-action_297 (321) = happyShift action_214-action_297 (322) = happyShift action_215-action_297 (327) = happyShift action_216-action_297 (332) = happyShift action_254-action_297 (336) = happyShift action_255-action_297 (344) = happyShift action_624-action_297 (347) = happyShift action_79-action_297 (348) = happyShift action_221-action_297 (349) = happyShift action_222-action_297 (351) = happyShift action_81-action_297 (353) = happyShift action_224-action_297 (355) = happyShift action_83-action_297 (200) = happyGoto action_622-action_297 (210) = happyGoto action_623-action_297 (225) = happyGoto action_456-action_297 (226) = happyGoto action_208-action_297 (228) = happyGoto action_209-action_297 (229) = happyGoto action_253-action_297 (230) = happyGoto action_34-action_297 (231) = happyGoto action_210-action_297 (232) = happyGoto action_211-action_297 _ = happyFail--action_298 (245) = happyShift action_37-action_298 (253) = happyShift action_40-action_298 (265) = happyShift action_46-action_298 (270) = happyShift action_179-action_298 (272) = happyShift action_49-action_298 (273) = happyShift action_50-action_298 (274) = happyShift action_51-action_298 (275) = happyShift action_180-action_298 (276) = happyShift action_181-action_298 (277) = happyShift action_182-action_298 (280) = happyShift action_57-action_298 (281) = happyShift action_58-action_298 (282) = happyShift action_59-action_298 (283) = happyShift action_60-action_298 (286) = happyShift action_62-action_298 (299) = happyShift action_183-action_298 (300) = happyShift action_184-action_298 (321) = happyShift action_185-action_298 (328) = happyShift action_186-action_298 (332) = happyShift action_187-action_298 (334) = happyShift action_188-action_298 (336) = happyShift action_189-action_298 (338) = happyShift action_190-action_298 (345) = happyShift action_191-action_298 (346) = happyShift action_192-action_298 (347) = happyShift action_193-action_298 (351) = happyShift action_194-action_298 (355) = happyShift action_195-action_298 (356) = happyShift action_84-action_298 (358) = happyShift action_196-action_298 (359) = happyShift action_197-action_298 (376) = happyShift action_198-action_298 (377) = happyShift action_199-action_298 (379) = happyShift action_102-action_298 (380) = happyShift action_103-action_298 (100) = happyGoto action_164-action_298 (101) = happyGoto action_621-action_298 (103) = happyGoto action_166-action_298 (104) = happyGoto action_167-action_298 (106) = happyGoto action_168-action_298 (107) = happyGoto action_169-action_298 (142) = happyGoto action_170-action_298 (192) = happyGoto action_171-action_298 (202) = happyGoto action_172-action_298 (203) = happyGoto action_173-action_298 (205) = happyGoto action_174-action_298 (206) = happyGoto action_175-action_298 (215) = happyGoto action_176-action_298 (217) = happyGoto action_177-action_298 (227) = happyGoto action_178-action_298 _ = happyFail--action_299 _ = happyReduce_263--action_300 (342) = happyShift action_620-action_300 _ = happyReduce_39--action_301 (342) = happyShift action_620-action_301 _ = happyReduce_40--action_302 (347) = happyShift action_544-action_302 (351) = happyShift action_545-action_302 (235) = happyGoto action_619-action_302 _ = happyFail--action_303 _ = happyReduce_484--action_304 _ = happyReduce_499--action_305 (244) = happyShift action_36-action_305 (245) = happyShift action_37-action_305 (246) = happyShift action_38-action_305 (251) = happyShift action_39-action_305 (253) = happyShift action_40-action_305 (254) = happyShift action_41-action_305 (261) = happyShift action_156-action_305 (265) = happyShift action_46-action_305 (269) = happyShift action_47-action_305 (270) = happyShift action_48-action_305 (272) = happyShift action_49-action_305 (273) = happyShift action_50-action_305 (274) = happyShift action_51-action_305 (275) = happyShift action_52-action_305 (276) = happyShift action_53-action_305 (277) = happyShift action_54-action_305 (278) = happyShift action_55-action_305 (279) = happyShift action_56-action_305 (280) = happyShift action_57-action_305 (281) = happyShift action_58-action_305 (282) = happyShift action_59-action_305 (283) = happyShift action_60-action_305 (284) = happyShift action_61-action_305 (285) = happyShift action_157-action_305 (286) = happyShift action_62-action_305 (294) = happyShift action_66-action_305 (295) = happyShift action_67-action_305 (296) = happyShift action_68-action_305 (311) = happyShift action_69-action_305 (317) = happyShift action_70-action_305 (320) = happyShift action_71-action_305 (321) = happyShift action_158-action_305 (332) = happyShift action_72-action_305 (334) = happyShift action_73-action_305 (336) = happyShift action_107-action_305 (338) = happyShift action_75-action_305 (340) = happyShift action_76-action_305 (342) = happyShift action_617-action_305 (345) = happyShift action_77-action_305 (346) = happyShift action_78-action_305 (347) = happyShift action_79-action_305 (350) = happyShift action_80-action_305 (351) = happyShift action_81-action_305 (354) = happyShift action_82-action_305 (355) = happyShift action_83-action_305 (356) = happyShift action_84-action_305 (357) = happyShift action_85-action_305 (358) = happyShift action_86-action_305 (359) = happyShift action_87-action_305 (360) = happyShift action_88-action_305 (361) = happyShift action_89-action_305 (362) = happyShift action_90-action_305 (363) = happyShift action_91-action_305 (364) = happyShift action_92-action_305 (365) = happyShift action_93-action_305 (366) = happyShift action_94-action_305 (371) = happyShift action_95-action_305 (372) = happyShift action_96-action_305 (373) = happyShift action_97-action_305 (374) = happyShift action_98-action_305 (376) = happyShift action_99-action_305 (377) = happyShift action_100-action_305 (378) = happyShift action_101-action_305 (379) = happyShift action_102-action_305 (380) = happyShift action_103-action_305 (38) = happyGoto action_13-action_305 (142) = happyGoto action_16-action_305 (143) = happyGoto action_152-action_305 (144) = happyGoto action_105-action_305 (145) = happyGoto action_18-action_305 (147) = happyGoto action_19-action_305 (148) = happyGoto action_20-action_305 (149) = happyGoto action_21-action_305 (150) = happyGoto action_22-action_305 (151) = happyGoto action_23-action_305 (152) = happyGoto action_24-action_305 (178) = happyGoto action_153-action_305 (182) = happyGoto action_618-action_305 (185) = happyGoto action_616-action_305 (186) = happyGoto action_155-action_305 (192) = happyGoto action_25-action_305 (195) = happyGoto action_26-action_305 (198) = happyGoto action_27-action_305 (219) = happyGoto action_29-action_305 (220) = happyGoto action_30-action_305 (221) = happyGoto action_106-action_305 (227) = happyGoto action_32-action_305 (229) = happyGoto action_33-action_305 (230) = happyGoto action_34-action_305 (233) = happyGoto action_35-action_305 _ = happyReduce_493--action_306 (244) = happyShift action_36-action_306 (245) = happyShift action_37-action_306 (246) = happyShift action_38-action_306 (251) = happyShift action_39-action_306 (253) = happyShift action_40-action_306 (254) = happyShift action_41-action_306 (261) = happyShift action_156-action_306 (265) = happyShift action_46-action_306 (269) = happyShift action_47-action_306 (270) = happyShift action_48-action_306 (272) = happyShift action_49-action_306 (273) = happyShift action_50-action_306 (274) = happyShift action_51-action_306 (275) = happyShift action_52-action_306 (276) = happyShift action_53-action_306 (277) = happyShift action_54-action_306 (278) = happyShift action_55-action_306 (279) = happyShift action_56-action_306 (280) = happyShift action_57-action_306 (281) = happyShift action_58-action_306 (282) = happyShift action_59-action_306 (283) = happyShift action_60-action_306 (284) = happyShift action_61-action_306 (285) = happyShift action_157-action_306 (286) = happyShift action_62-action_306 (294) = happyShift action_66-action_306 (295) = happyShift action_67-action_306 (296) = happyShift action_68-action_306 (311) = happyShift action_69-action_306 (317) = happyShift action_70-action_306 (320) = happyShift action_71-action_306 (321) = happyShift action_158-action_306 (332) = happyShift action_72-action_306 (334) = happyShift action_73-action_306 (336) = happyShift action_107-action_306 (338) = happyShift action_75-action_306 (340) = happyShift action_76-action_306 (342) = happyShift action_617-action_306 (345) = happyShift action_77-action_306 (346) = happyShift action_78-action_306 (347) = happyShift action_79-action_306 (350) = happyShift action_80-action_306 (351) = happyShift action_81-action_306 (354) = happyShift action_82-action_306 (355) = happyShift action_83-action_306 (356) = happyShift action_84-action_306 (357) = happyShift action_85-action_306 (358) = happyShift action_86-action_306 (359) = happyShift action_87-action_306 (360) = happyShift action_88-action_306 (361) = happyShift action_89-action_306 (362) = happyShift action_90-action_306 (363) = happyShift action_91-action_306 (364) = happyShift action_92-action_306 (365) = happyShift action_93-action_306 (366) = happyShift action_94-action_306 (371) = happyShift action_95-action_306 (372) = happyShift action_96-action_306 (373) = happyShift action_97-action_306 (374) = happyShift action_98-action_306 (376) = happyShift action_99-action_306 (377) = happyShift action_100-action_306 (378) = happyShift action_101-action_306 (379) = happyShift action_102-action_306 (380) = happyShift action_103-action_306 (38) = happyGoto action_13-action_306 (142) = happyGoto action_16-action_306 (143) = happyGoto action_152-action_306 (144) = happyGoto action_105-action_306 (145) = happyGoto action_18-action_306 (147) = happyGoto action_19-action_306 (148) = happyGoto action_20-action_306 (149) = happyGoto action_21-action_306 (150) = happyGoto action_22-action_306 (151) = happyGoto action_23-action_306 (152) = happyGoto action_24-action_306 (178) = happyGoto action_153-action_306 (182) = happyGoto action_615-action_306 (185) = happyGoto action_616-action_306 (186) = happyGoto action_155-action_306 (192) = happyGoto action_25-action_306 (195) = happyGoto action_26-action_306 (198) = happyGoto action_27-action_306 (219) = happyGoto action_29-action_306 (220) = happyGoto action_30-action_306 (221) = happyGoto action_106-action_306 (227) = happyGoto action_32-action_306 (229) = happyGoto action_33-action_306 (230) = happyGoto action_34-action_306 (233) = happyGoto action_35-action_306 _ = happyReduce_493--action_307 _ = happyReduce_167--action_308 (256) = happyShift action_482-action_308 _ = happyReduce_502--action_309 (244) = happyShift action_36-action_309 (245) = happyShift action_37-action_309 (246) = happyShift action_38-action_309 (251) = happyShift action_39-action_309 (253) = happyShift action_40-action_309 (254) = happyShift action_41-action_309 (257) = happyShift action_42-action_309 (258) = happyShift action_43-action_309 (259) = happyShift action_44-action_309 (261) = happyShift action_45-action_309 (265) = happyShift action_46-action_309 (269) = happyShift action_47-action_309 (270) = happyShift action_48-action_309 (272) = happyShift action_49-action_309 (273) = happyShift action_50-action_309 (274) = happyShift action_51-action_309 (275) = happyShift action_52-action_309 (276) = happyShift action_53-action_309 (277) = happyShift action_54-action_309 (278) = happyShift action_55-action_309 (279) = happyShift action_56-action_309 (280) = happyShift action_57-action_309 (281) = happyShift action_58-action_309 (282) = happyShift action_59-action_309 (283) = happyShift action_60-action_309 (284) = happyShift action_61-action_309 (286) = happyShift action_62-action_309 (289) = happyShift action_63-action_309 (290) = happyShift action_64-action_309 (291) = happyShift action_65-action_309 (294) = happyShift action_66-action_309 (295) = happyShift action_67-action_309 (296) = happyShift action_68-action_309 (311) = happyShift action_69-action_309 (317) = happyShift action_70-action_309 (320) = happyShift action_71-action_309 (321) = happyShift action_145-action_309 (332) = happyShift action_72-action_309 (334) = happyShift action_73-action_309 (336) = happyShift action_74-action_309 (338) = happyShift action_75-action_309 (340) = happyShift action_76-action_309 (345) = happyShift action_77-action_309 (346) = happyShift action_78-action_309 (347) = happyShift action_79-action_309 (350) = happyShift action_80-action_309 (351) = happyShift action_81-action_309 (354) = happyShift action_82-action_309 (355) = happyShift action_83-action_309 (356) = happyShift action_84-action_309 (357) = happyShift action_85-action_309 (358) = happyShift action_86-action_309 (359) = happyShift action_87-action_309 (360) = happyShift action_88-action_309 (361) = happyShift action_89-action_309 (362) = happyShift action_90-action_309 (363) = happyShift action_91-action_309 (364) = happyShift action_92-action_309 (365) = happyShift action_93-action_309 (366) = happyShift action_94-action_309 (367) = happyShift action_146-action_309 (368) = happyShift action_147-action_309 (369) = happyShift action_148-action_309 (370) = happyShift action_149-action_309 (371) = happyShift action_95-action_309 (372) = happyShift action_96-action_309 (373) = happyShift action_97-action_309 (374) = happyShift action_98-action_309 (376) = happyShift action_99-action_309 (377) = happyShift action_100-action_309 (378) = happyShift action_101-action_309 (379) = happyShift action_102-action_309 (380) = happyShift action_103-action_309 (38) = happyGoto action_13-action_309 (49) = happyGoto action_14-action_309 (71) = happyGoto action_613-action_309 (135) = happyGoto action_121-action_309 (136) = happyGoto action_122-action_309 (137) = happyGoto action_609-action_309 (141) = happyGoto action_124-action_309 (142) = happyGoto action_16-action_309 (144) = happyGoto action_125-action_309 (145) = happyGoto action_18-action_309 (147) = happyGoto action_19-action_309 (148) = happyGoto action_20-action_309 (149) = happyGoto action_21-action_309 (150) = happyGoto action_22-action_309 (151) = happyGoto action_23-action_309 (152) = happyGoto action_24-action_309 (190) = happyGoto action_614-action_309 (191) = happyGoto action_611-action_309 (192) = happyGoto action_612-action_309 (195) = happyGoto action_26-action_309 (198) = happyGoto action_27-action_309 (218) = happyGoto action_28-action_309 (219) = happyGoto action_29-action_309 (220) = happyGoto action_30-action_309 (221) = happyGoto action_31-action_309 (227) = happyGoto action_32-action_309 (229) = happyGoto action_33-action_309 (230) = happyGoto action_34-action_309 (233) = happyGoto action_35-action_309 (237) = happyGoto action_126-action_309 (238) = happyGoto action_127-action_309 (239) = happyGoto action_128-action_309 (240) = happyGoto action_129-action_309 _ = happyReduce_164--action_310 (244) = happyShift action_36-action_310 (245) = happyShift action_37-action_310 (246) = happyShift action_38-action_310 (251) = happyShift action_39-action_310 (253) = happyShift action_40-action_310 (254) = happyShift action_41-action_310 (257) = happyShift action_42-action_310 (258) = happyShift action_43-action_310 (259) = happyShift action_44-action_310 (261) = happyShift action_45-action_310 (265) = happyShift action_46-action_310 (269) = happyShift action_47-action_310 (270) = happyShift action_48-action_310 (272) = happyShift action_49-action_310 (273) = happyShift action_50-action_310 (274) = happyShift action_51-action_310 (275) = happyShift action_52-action_310 (276) = happyShift action_53-action_310 (277) = happyShift action_54-action_310 (278) = happyShift action_55-action_310 (279) = happyShift action_56-action_310 (280) = happyShift action_57-action_310 (281) = happyShift action_58-action_310 (282) = happyShift action_59-action_310 (283) = happyShift action_60-action_310 (284) = happyShift action_61-action_310 (286) = happyShift action_62-action_310 (289) = happyShift action_63-action_310 (290) = happyShift action_64-action_310 (291) = happyShift action_65-action_310 (294) = happyShift action_66-action_310 (295) = happyShift action_67-action_310 (296) = happyShift action_68-action_310 (311) = happyShift action_69-action_310 (317) = happyShift action_70-action_310 (320) = happyShift action_71-action_310 (321) = happyShift action_145-action_310 (332) = happyShift action_72-action_310 (334) = happyShift action_73-action_310 (336) = happyShift action_74-action_310 (338) = happyShift action_75-action_310 (340) = happyShift action_76-action_310 (345) = happyShift action_77-action_310 (346) = happyShift action_78-action_310 (347) = happyShift action_79-action_310 (350) = happyShift action_80-action_310 (351) = happyShift action_81-action_310 (354) = happyShift action_82-action_310 (355) = happyShift action_83-action_310 (356) = happyShift action_84-action_310 (357) = happyShift action_85-action_310 (358) = happyShift action_86-action_310 (359) = happyShift action_87-action_310 (360) = happyShift action_88-action_310 (361) = happyShift action_89-action_310 (362) = happyShift action_90-action_310 (363) = happyShift action_91-action_310 (364) = happyShift action_92-action_310 (365) = happyShift action_93-action_310 (366) = happyShift action_94-action_310 (367) = happyShift action_146-action_310 (368) = happyShift action_147-action_310 (369) = happyShift action_148-action_310 (370) = happyShift action_149-action_310 (371) = happyShift action_95-action_310 (372) = happyShift action_96-action_310 (373) = happyShift action_97-action_310 (374) = happyShift action_98-action_310 (376) = happyShift action_99-action_310 (377) = happyShift action_100-action_310 (378) = happyShift action_101-action_310 (379) = happyShift action_102-action_310 (380) = happyShift action_103-action_310 (38) = happyGoto action_13-action_310 (49) = happyGoto action_14-action_310 (71) = happyGoto action_608-action_310 (135) = happyGoto action_121-action_310 (136) = happyGoto action_122-action_310 (137) = happyGoto action_609-action_310 (141) = happyGoto action_124-action_310 (142) = happyGoto action_16-action_310 (144) = happyGoto action_125-action_310 (145) = happyGoto action_18-action_310 (147) = happyGoto action_19-action_310 (148) = happyGoto action_20-action_310 (149) = happyGoto action_21-action_310 (150) = happyGoto action_22-action_310 (151) = happyGoto action_23-action_310 (152) = happyGoto action_24-action_310 (190) = happyGoto action_610-action_310 (191) = happyGoto action_611-action_310 (192) = happyGoto action_612-action_310 (195) = happyGoto action_26-action_310 (198) = happyGoto action_27-action_310 (218) = happyGoto action_28-action_310 (219) = happyGoto action_29-action_310 (220) = happyGoto action_30-action_310 (221) = happyGoto action_31-action_310 (227) = happyGoto action_32-action_310 (229) = happyGoto action_33-action_310 (230) = happyGoto action_34-action_310 (233) = happyGoto action_35-action_310 (237) = happyGoto action_126-action_310 (238) = happyGoto action_127-action_310 (239) = happyGoto action_128-action_310 (240) = happyGoto action_129-action_310 _ = happyReduce_164--action_311 (244) = happyShift action_36-action_311 (245) = happyShift action_37-action_311 (246) = happyShift action_38-action_311 (251) = happyShift action_39-action_311 (253) = happyShift action_40-action_311 (254) = happyShift action_41-action_311 (261) = happyShift action_45-action_311 (265) = happyShift action_46-action_311 (269) = happyShift action_47-action_311 (270) = happyShift action_48-action_311 (272) = happyShift action_49-action_311 (273) = happyShift action_50-action_311 (274) = happyShift action_51-action_311 (275) = happyShift action_52-action_311 (276) = happyShift action_53-action_311 (277) = happyShift action_54-action_311 (278) = happyShift action_55-action_311 (279) = happyShift action_56-action_311 (280) = happyShift action_57-action_311 (281) = happyShift action_58-action_311 (282) = happyShift action_59-action_311 (283) = happyShift action_60-action_311 (284) = happyShift action_61-action_311 (286) = happyShift action_62-action_311 (294) = happyShift action_66-action_311 (295) = happyShift action_67-action_311 (296) = happyShift action_68-action_311 (311) = happyShift action_69-action_311 (317) = happyShift action_70-action_311 (320) = happyShift action_71-action_311 (332) = happyShift action_72-action_311 (334) = happyShift action_73-action_311 (336) = happyShift action_107-action_311 (338) = happyShift action_75-action_311 (340) = happyShift action_76-action_311 (345) = happyShift action_77-action_311 (346) = happyShift action_78-action_311 (347) = happyShift action_79-action_311 (350) = happyShift action_80-action_311 (351) = happyShift action_81-action_311 (354) = happyShift action_82-action_311 (355) = happyShift action_83-action_311 (356) = happyShift action_84-action_311 (357) = happyShift action_85-action_311 (358) = happyShift action_86-action_311 (359) = happyShift action_87-action_311 (360) = happyShift action_88-action_311 (361) = happyShift action_89-action_311 (362) = happyShift action_90-action_311 (363) = happyShift action_91-action_311 (364) = happyShift action_92-action_311 (365) = happyShift action_93-action_311 (366) = happyShift action_94-action_311 (371) = happyShift action_95-action_311 (372) = happyShift action_96-action_311 (373) = happyShift action_97-action_311 (374) = happyShift action_98-action_311 (376) = happyShift action_99-action_311 (377) = happyShift action_100-action_311 (378) = happyShift action_101-action_311 (379) = happyShift action_102-action_311 (380) = happyShift action_103-action_311 (38) = happyGoto action_13-action_311 (142) = happyGoto action_16-action_311 (143) = happyGoto action_607-action_311 (144) = happyGoto action_105-action_311 (145) = happyGoto action_18-action_311 (147) = happyGoto action_19-action_311 (148) = happyGoto action_20-action_311 (149) = happyGoto action_21-action_311 (150) = happyGoto action_22-action_311 (151) = happyGoto action_23-action_311 (152) = happyGoto action_24-action_311 (192) = happyGoto action_25-action_311 (195) = happyGoto action_26-action_311 (198) = happyGoto action_27-action_311 (219) = happyGoto action_29-action_311 (220) = happyGoto action_30-action_311 (221) = happyGoto action_106-action_311 (227) = happyGoto action_32-action_311 (229) = happyGoto action_33-action_311 (230) = happyGoto action_34-action_311 (233) = happyGoto action_35-action_311 _ = happyFail--action_312 (275) = happyShift action_606-action_312 (42) = happyGoto action_605-action_312 _ = happyReduce_73--action_313 (306) = happyShift action_604-action_313 _ = happyFail--action_314 (310) = happyShift action_558-action_314 (313) = happyShift action_559-action_314 (138) = happyGoto action_603-action_314 (139) = happyGoto action_556-action_314 (140) = happyGoto action_557-action_314 _ = happyFail--action_315 (306) = happyShift action_602-action_315 _ = happyFail--action_316 (320) = happyShift action_213-action_316 (321) = happyShift action_214-action_316 (322) = happyShift action_215-action_316 (327) = happyShift action_216-action_316 (348) = happyShift action_221-action_316 (352) = happyShift action_223-action_316 (224) = happyGoto action_245-action_316 (225) = happyGoto action_246-action_316 (226) = happyGoto action_208-action_316 (228) = happyGoto action_209-action_316 _ = happyFail--action_317 (306) = happyShift action_601-action_317 _ = happyFail--action_318 (245) = happyShift action_37-action_318 (253) = happyShift action_40-action_318 (265) = happyShift action_46-action_318 (272) = happyShift action_49-action_318 (273) = happyShift action_50-action_318 (274) = happyShift action_51-action_318 (275) = happyShift action_180-action_318 (276) = happyShift action_181-action_318 (277) = happyShift action_182-action_318 (280) = happyShift action_57-action_318 (281) = happyShift action_58-action_318 (282) = happyShift action_59-action_318 (283) = happyShift action_60-action_318 (286) = happyShift action_62-action_318 (299) = happyShift action_183-action_318 (300) = happyShift action_184-action_318 (321) = happyShift action_185-action_318 (328) = happyShift action_186-action_318 (332) = happyShift action_187-action_318 (334) = happyShift action_188-action_318 (336) = happyShift action_189-action_318 (338) = happyShift action_190-action_318 (345) = happyShift action_191-action_318 (346) = happyShift action_192-action_318 (347) = happyShift action_193-action_318 (351) = happyShift action_194-action_318 (355) = happyShift action_195-action_318 (358) = happyShift action_196-action_318 (359) = happyShift action_197-action_318 (376) = happyShift action_198-action_318 (377) = happyShift action_199-action_318 (379) = happyShift action_102-action_318 (380) = happyShift action_103-action_318 (100) = happyGoto action_164-action_318 (104) = happyGoto action_600-action_318 (106) = happyGoto action_346-action_318 (107) = happyGoto action_169-action_318 (142) = happyGoto action_170-action_318 (202) = happyGoto action_172-action_318 (203) = happyGoto action_173-action_318 (205) = happyGoto action_174-action_318 (206) = happyGoto action_175-action_318 (215) = happyGoto action_176-action_318 (217) = happyGoto action_177-action_318 (227) = happyGoto action_178-action_318 _ = happyFail--action_319 (332) = happyShift action_389-action_319 (334) = happyShift action_390-action_319 (336) = happyShift action_391-action_319 (338) = happyShift action_392-action_319 (347) = happyShift action_193-action_319 (351) = happyShift action_194-action_319 (355) = happyShift action_195-action_319 (201) = happyGoto action_599-action_319 (202) = happyGoto action_387-action_319 (203) = happyGoto action_173-action_319 (205) = happyGoto action_174-action_319 (206) = happyGoto action_175-action_319 _ = happyFail--action_320 (310) = happyShift action_598-action_320 _ = happyFail--action_321 (332) = happyShift action_389-action_321 (334) = happyShift action_390-action_321 (336) = happyShift action_391-action_321 (338) = happyShift action_392-action_321 (347) = happyShift action_193-action_321 (351) = happyShift action_194-action_321 (355) = happyShift action_195-action_321 (201) = happyGoto action_597-action_321 (202) = happyGoto action_387-action_321 (203) = happyGoto action_173-action_321 (205) = happyGoto action_174-action_321 (206) = happyGoto action_175-action_321 _ = happyFail--action_322 (332) = happyShift action_389-action_322 (334) = happyShift action_390-action_322 (336) = happyShift action_391-action_322 (338) = happyShift action_392-action_322 (347) = happyShift action_193-action_322 (351) = happyShift action_194-action_322 (355) = happyShift action_195-action_322 (201) = happyGoto action_596-action_322 (202) = happyGoto action_387-action_322 (203) = happyGoto action_173-action_322 (205) = happyGoto action_174-action_322 (206) = happyGoto action_175-action_322 _ = happyFail--action_323 (244) = happyShift action_36-action_323 (245) = happyShift action_37-action_323 (253) = happyShift action_40-action_323 (265) = happyShift action_46-action_323 (270) = happyShift action_48-action_323 (272) = happyShift action_49-action_323 (273) = happyShift action_50-action_323 (274) = happyShift action_51-action_323 (275) = happyShift action_52-action_323 (276) = happyShift action_53-action_323 (277) = happyShift action_54-action_323 (279) = happyShift action_56-action_323 (280) = happyShift action_57-action_323 (281) = happyShift action_58-action_323 (282) = happyShift action_59-action_323 (283) = happyShift action_60-action_323 (286) = happyShift action_62-action_323 (317) = happyShift action_70-action_323 (332) = happyShift action_72-action_323 (334) = happyShift action_73-action_323 (336) = happyShift action_107-action_323 (338) = happyShift action_75-action_323 (340) = happyShift action_76-action_323 (345) = happyShift action_77-action_323 (346) = happyShift action_78-action_323 (347) = happyShift action_79-action_323 (350) = happyShift action_80-action_323 (351) = happyShift action_81-action_323 (354) = happyShift action_82-action_323 (355) = happyShift action_83-action_323 (356) = happyShift action_84-action_323 (357) = happyShift action_85-action_323 (358) = happyShift action_86-action_323 (359) = happyShift action_87-action_323 (360) = happyShift action_88-action_323 (361) = happyShift action_89-action_323 (362) = happyShift action_90-action_323 (363) = happyShift action_91-action_323 (364) = happyShift action_92-action_323 (365) = happyShift action_93-action_323 (366) = happyShift action_94-action_323 (371) = happyShift action_95-action_323 (372) = happyShift action_96-action_323 (373) = happyShift action_97-action_323 (374) = happyShift action_98-action_323 (376) = happyShift action_99-action_323 (377) = happyShift action_100-action_323 (378) = happyShift action_101-action_323 (379) = happyShift action_102-action_323 (380) = happyShift action_103-action_323 (38) = happyGoto action_13-action_323 (142) = happyGoto action_16-action_323 (150) = happyGoto action_595-action_323 (151) = happyGoto action_23-action_323 (152) = happyGoto action_24-action_323 (192) = happyGoto action_25-action_323 (195) = happyGoto action_26-action_323 (198) = happyGoto action_27-action_323 (219) = happyGoto action_29-action_323 (220) = happyGoto action_30-action_323 (221) = happyGoto action_106-action_323 (227) = happyGoto action_32-action_323 (229) = happyGoto action_33-action_323 (230) = happyGoto action_34-action_323 (233) = happyGoto action_35-action_323 _ = happyFail--action_324 _ = happyReduce_518--action_325 _ = happyReduce_524--action_326 _ = happyReduce_517--action_327 _ = happyReduce_581--action_328 _ = happyReduce_522--action_329 (244) = happyShift action_36-action_329 (245) = happyShift action_37-action_329 (253) = happyShift action_40-action_329 (265) = happyShift action_46-action_329 (270) = happyShift action_48-action_329 (272) = happyShift action_49-action_329 (273) = happyShift action_50-action_329 (274) = happyShift action_51-action_329 (275) = happyShift action_52-action_329 (276) = happyShift action_53-action_329 (277) = happyShift action_54-action_329 (279) = happyShift action_56-action_329 (280) = happyShift action_57-action_329 (281) = happyShift action_58-action_329 (282) = happyShift action_59-action_329 (283) = happyShift action_60-action_329 (286) = happyShift action_62-action_329 (317) = happyShift action_70-action_329 (332) = happyShift action_72-action_329 (334) = happyShift action_73-action_329 (336) = happyShift action_107-action_329 (338) = happyShift action_75-action_329 (340) = happyShift action_76-action_329 (345) = happyShift action_77-action_329 (346) = happyShift action_78-action_329 (347) = happyShift action_79-action_329 (350) = happyShift action_80-action_329 (351) = happyShift action_81-action_329 (354) = happyShift action_82-action_329 (355) = happyShift action_83-action_329 (356) = happyShift action_84-action_329 (357) = happyShift action_85-action_329 (358) = happyShift action_86-action_329 (359) = happyShift action_87-action_329 (360) = happyShift action_88-action_329 (361) = happyShift action_89-action_329 (362) = happyShift action_90-action_329 (363) = happyShift action_91-action_329 (364) = happyShift action_92-action_329 (365) = happyShift action_93-action_329 (366) = happyShift action_94-action_329 (371) = happyShift action_95-action_329 (372) = happyShift action_96-action_329 (373) = happyShift action_97-action_329 (374) = happyShift action_98-action_329 (376) = happyShift action_99-action_329 (377) = happyShift action_100-action_329 (378) = happyShift action_101-action_329 (379) = happyShift action_102-action_329 (380) = happyShift action_103-action_329 (38) = happyGoto action_13-action_329 (142) = happyGoto action_16-action_329 (150) = happyGoto action_594-action_329 (151) = happyGoto action_23-action_329 (152) = happyGoto action_24-action_329 (192) = happyGoto action_25-action_329 (195) = happyGoto action_26-action_329 (198) = happyGoto action_27-action_329 (219) = happyGoto action_29-action_329 (220) = happyGoto action_30-action_329 (221) = happyGoto action_106-action_329 (227) = happyGoto action_32-action_329 (229) = happyGoto action_33-action_329 (230) = happyGoto action_34-action_329 (233) = happyGoto action_35-action_329 _ = happyFail--action_330 (347) = happyShift action_193-action_330 (206) = happyGoto action_593-action_330 _ = happyFail--action_331 (308) = happyShift action_212-action_331 (320) = happyShift action_213-action_331 (321) = happyShift action_214-action_331 (322) = happyShift action_215-action_331 (327) = happyShift action_216-action_331 (337) = happyShift action_250-action_331 (343) = happyShift action_244-action_331 (348) = happyShift action_221-action_331 (349) = happyShift action_222-action_331 (225) = happyGoto action_591-action_331 (226) = happyGoto action_208-action_331 (228) = happyGoto action_209-action_331 (232) = happyGoto action_592-action_331 (236) = happyGoto action_248-action_331 _ = happyFail--action_332 (306) = happyShift action_589-action_332 (342) = happyShift action_590-action_332 _ = happyFail--action_333 _ = happyReduce_189--action_334 (332) = happyShift action_583-action_334 (358) = happyShift action_584-action_334 (86) = happyGoto action_588-action_334 _ = happyFail--action_335 (343) = happyShift action_587-action_335 _ = happyReduce_515--action_336 (306) = happyShift action_585-action_336 (342) = happyShift action_586-action_336 _ = happyFail--action_337 _ = happyReduce_194--action_338 (332) = happyShift action_583-action_338 (358) = happyShift action_584-action_338 (86) = happyGoto action_582-action_338 _ = happyFail--action_339 (306) = happyShift action_580-action_339 (342) = happyShift action_581-action_339 _ = happyFail--action_340 _ = happyReduce_174--action_341 (332) = happyShift action_429-action_341 (77) = happyGoto action_579-action_341 (78) = happyGoto action_428-action_341 _ = happyReduce_177--action_342 _ = happyReduce_99--action_343 (280) = happyShift action_574-action_343 (281) = happyShift action_575-action_343 (282) = happyShift action_576-action_343 (283) = happyShift action_577-action_343 (90) = happyGoto action_578-action_343 _ = happyFail--action_344 (280) = happyShift action_574-action_344 (281) = happyShift action_575-action_344 (282) = happyShift action_576-action_344 (283) = happyShift action_577-action_344 (90) = happyGoto action_573-action_344 _ = happyFail--action_345 (310) = happyShift action_572-action_345 _ = happyFail--action_346 (245) = happyShift action_37-action_346 (253) = happyShift action_40-action_346 (265) = happyShift action_46-action_346 (272) = happyShift action_49-action_346 (273) = happyShift action_50-action_346 (274) = happyShift action_51-action_346 (275) = happyShift action_180-action_346 (276) = happyShift action_181-action_346 (277) = happyShift action_182-action_346 (280) = happyShift action_57-action_346 (281) = happyShift action_58-action_346 (282) = happyShift action_59-action_346 (283) = happyShift action_60-action_346 (286) = happyShift action_62-action_346 (299) = happyShift action_183-action_346 (300) = happyShift action_184-action_346 (315) = happyShift action_293-action_346 (317) = happyShift action_571-action_346 (321) = happyShift action_185-action_346 (322) = happyShift action_267-action_346 (327) = happyShift action_295-action_346 (328) = happyShift action_186-action_346 (332) = happyShift action_187-action_346 (334) = happyShift action_188-action_346 (336) = happyShift action_189-action_346 (338) = happyShift action_190-action_346 (344) = happyShift action_296-action_346 (345) = happyShift action_297-action_346 (346) = happyShift action_192-action_346 (347) = happyShift action_193-action_346 (348) = happyShift action_269-action_346 (349) = happyShift action_270-action_346 (351) = happyShift action_194-action_346 (352) = happyShift action_271-action_346 (353) = happyShift action_272-action_346 (355) = happyShift action_195-action_346 (358) = happyShift action_196-action_346 (359) = happyShift action_197-action_346 (376) = happyShift action_198-action_346 (377) = happyShift action_199-action_346 (379) = happyShift action_102-action_346 (380) = happyShift action_103-action_346 (100) = happyGoto action_164-action_346 (107) = happyGoto action_289-action_346 (142) = happyGoto action_170-action_346 (202) = happyGoto action_172-action_346 (203) = happyGoto action_173-action_346 (204) = happyGoto action_290-action_346 (205) = happyGoto action_174-action_346 (206) = happyGoto action_175-action_346 (207) = happyGoto action_291-action_346 (208) = happyGoto action_262-action_346 (215) = happyGoto action_176-action_346 (216) = happyGoto action_292-action_346 (217) = happyGoto action_177-action_346 (227) = happyGoto action_178-action_346 _ = happyReduce_241--action_347 (245) = happyShift action_37-action_347 (253) = happyShift action_40-action_347 (265) = happyShift action_46-action_347 (272) = happyShift action_49-action_347 (273) = happyShift action_50-action_347 (274) = happyShift action_51-action_347 (275) = happyShift action_180-action_347 (276) = happyShift action_181-action_347 (277) = happyShift action_182-action_347 (280) = happyShift action_57-action_347 (281) = happyShift action_58-action_347 (282) = happyShift action_59-action_347 (283) = happyShift action_60-action_347 (286) = happyShift action_62-action_347 (299) = happyShift action_183-action_347 (300) = happyShift action_184-action_347 (321) = happyShift action_185-action_347 (328) = happyShift action_186-action_347 (332) = happyShift action_187-action_347 (334) = happyShift action_188-action_347 (336) = happyShift action_189-action_347 (338) = happyShift action_190-action_347 (345) = happyShift action_191-action_347 (346) = happyShift action_192-action_347 (347) = happyShift action_193-action_347 (351) = happyShift action_194-action_347 (355) = happyShift action_195-action_347 (358) = happyShift action_196-action_347 (359) = happyShift action_197-action_347 (376) = happyShift action_198-action_347 (377) = happyShift action_199-action_347 (379) = happyShift action_102-action_347 (380) = happyShift action_103-action_347 (100) = happyGoto action_164-action_347 (104) = happyGoto action_570-action_347 (106) = happyGoto action_346-action_347 (107) = happyGoto action_169-action_347 (142) = happyGoto action_170-action_347 (202) = happyGoto action_172-action_347 (203) = happyGoto action_173-action_347 (205) = happyGoto action_174-action_347 (206) = happyGoto action_175-action_347 (215) = happyGoto action_176-action_347 (217) = happyGoto action_177-action_347 (227) = happyGoto action_178-action_347 _ = happyFail--action_348 (245) = happyShift action_37-action_348 (253) = happyShift action_40-action_348 (265) = happyShift action_46-action_348 (272) = happyShift action_49-action_348 (273) = happyShift action_50-action_348 (274) = happyShift action_51-action_348 (275) = happyShift action_180-action_348 (276) = happyShift action_181-action_348 (277) = happyShift action_182-action_348 (280) = happyShift action_57-action_348 (281) = happyShift action_58-action_348 (282) = happyShift action_59-action_348 (283) = happyShift action_60-action_348 (286) = happyShift action_62-action_348 (299) = happyShift action_183-action_348 (300) = happyShift action_184-action_348 (321) = happyShift action_185-action_348 (328) = happyShift action_186-action_348 (332) = happyShift action_187-action_348 (334) = happyShift action_188-action_348 (336) = happyShift action_189-action_348 (338) = happyShift action_190-action_348 (345) = happyShift action_191-action_348 (346) = happyShift action_192-action_348 (347) = happyShift action_193-action_348 (351) = happyShift action_194-action_348 (355) = happyShift action_195-action_348 (358) = happyShift action_196-action_348 (359) = happyShift action_197-action_348 (376) = happyShift action_198-action_348 (377) = happyShift action_199-action_348 (379) = happyShift action_102-action_348 (380) = happyShift action_103-action_348 (100) = happyGoto action_164-action_348 (104) = happyGoto action_569-action_348 (106) = happyGoto action_346-action_348 (107) = happyGoto action_169-action_348 (142) = happyGoto action_170-action_348 (202) = happyGoto action_172-action_348 (203) = happyGoto action_173-action_348 (205) = happyGoto action_174-action_348 (206) = happyGoto action_175-action_348 (215) = happyGoto action_176-action_348 (217) = happyGoto action_177-action_348 (227) = happyGoto action_178-action_348 _ = happyFail--action_349 _ = happyReduce_283--action_350 _ = happyReduce_220--action_351 (268) = happyShift action_568-action_351 (70) = happyGoto action_567-action_351 _ = happyReduce_160--action_352 (245) = happyShift action_37-action_352 (253) = happyShift action_40-action_352 (265) = happyShift action_46-action_352 (270) = happyShift action_179-action_352 (272) = happyShift action_49-action_352 (273) = happyShift action_50-action_352 (274) = happyShift action_51-action_352 (275) = happyShift action_180-action_352 (276) = happyShift action_181-action_352 (277) = happyShift action_182-action_352 (280) = happyShift action_57-action_352 (281) = happyShift action_58-action_352 (282) = happyShift action_59-action_352 (283) = happyShift action_60-action_352 (286) = happyShift action_62-action_352 (299) = happyShift action_183-action_352 (300) = happyShift action_184-action_352 (321) = happyShift action_185-action_352 (328) = happyShift action_186-action_352 (332) = happyShift action_187-action_352 (334) = happyShift action_188-action_352 (336) = happyShift action_189-action_352 (338) = happyShift action_190-action_352 (345) = happyShift action_191-action_352 (346) = happyShift action_192-action_352 (347) = happyShift action_193-action_352 (351) = happyShift action_194-action_352 (355) = happyShift action_195-action_352 (356) = happyShift action_84-action_352 (358) = happyShift action_196-action_352 (359) = happyShift action_197-action_352 (376) = happyShift action_198-action_352 (377) = happyShift action_199-action_352 (379) = happyShift action_102-action_352 (380) = happyShift action_103-action_352 (95) = happyGoto action_349-action_352 (100) = happyGoto action_164-action_352 (101) = happyGoto action_350-action_352 (103) = happyGoto action_166-action_352 (104) = happyGoto action_167-action_352 (106) = happyGoto action_168-action_352 (107) = happyGoto action_169-action_352 (108) = happyGoto action_566-action_352 (142) = happyGoto action_170-action_352 (192) = happyGoto action_171-action_352 (202) = happyGoto action_172-action_352 (203) = happyGoto action_173-action_352 (205) = happyGoto action_174-action_352 (206) = happyGoto action_175-action_352 (215) = happyGoto action_176-action_352 (217) = happyGoto action_177-action_352 (227) = happyGoto action_178-action_352 _ = happyFail--action_353 (245) = happyShift action_37-action_353 (253) = happyShift action_40-action_353 (265) = happyShift action_46-action_353 (270) = happyShift action_179-action_353 (272) = happyShift action_49-action_353 (273) = happyShift action_50-action_353 (274) = happyShift action_51-action_353 (275) = happyShift action_180-action_353 (276) = happyShift action_181-action_353 (277) = happyShift action_182-action_353 (280) = happyShift action_57-action_353 (281) = happyShift action_58-action_353 (282) = happyShift action_59-action_353 (283) = happyShift action_60-action_353 (286) = happyShift action_62-action_353 (299) = happyShift action_183-action_353 (300) = happyShift action_184-action_353 (321) = happyShift action_185-action_353 (328) = happyShift action_186-action_353 (332) = happyShift action_187-action_353 (334) = happyShift action_188-action_353 (336) = happyShift action_189-action_353 (338) = happyShift action_190-action_353 (345) = happyShift action_191-action_353 (346) = happyShift action_192-action_353 (347) = happyShift action_193-action_353 (351) = happyShift action_194-action_353 (355) = happyShift action_195-action_353 (356) = happyShift action_84-action_353 (358) = happyShift action_196-action_353 (359) = happyShift action_197-action_353 (376) = happyShift action_198-action_353 (377) = happyShift action_199-action_353 (379) = happyShift action_102-action_353 (380) = happyShift action_103-action_353 (100) = happyGoto action_164-action_353 (101) = happyGoto action_256-action_353 (103) = happyGoto action_166-action_353 (104) = happyGoto action_167-action_353 (106) = happyGoto action_168-action_353 (107) = happyGoto action_169-action_353 (110) = happyGoto action_564-action_353 (111) = happyGoto action_565-action_353 (142) = happyGoto action_170-action_353 (192) = happyGoto action_171-action_353 (202) = happyGoto action_172-action_353 (203) = happyGoto action_173-action_353 (205) = happyGoto action_174-action_353 (206) = happyGoto action_175-action_353 (215) = happyGoto action_176-action_353 (217) = happyGoto action_177-action_353 (227) = happyGoto action_178-action_353 _ = happyReduce_287--action_354 (245) = happyShift action_37-action_354 (253) = happyShift action_40-action_354 (265) = happyShift action_46-action_354 (272) = happyShift action_49-action_354 (273) = happyShift action_50-action_354 (274) = happyShift action_51-action_354 (275) = happyShift action_180-action_354 (276) = happyShift action_181-action_354 (277) = happyShift action_182-action_354 (280) = happyShift action_57-action_354 (281) = happyShift action_58-action_354 (282) = happyShift action_59-action_354 (283) = happyShift action_60-action_354 (286) = happyShift action_62-action_354 (299) = happyShift action_183-action_354 (300) = happyShift action_184-action_354 (321) = happyShift action_185-action_354 (328) = happyShift action_186-action_354 (332) = happyShift action_187-action_354 (334) = happyShift action_188-action_354 (336) = happyShift action_189-action_354 (338) = happyShift action_190-action_354 (345) = happyShift action_191-action_354 (346) = happyShift action_192-action_354 (347) = happyShift action_193-action_354 (351) = happyShift action_194-action_354 (355) = happyShift action_195-action_354 (358) = happyShift action_196-action_354 (359) = happyShift action_197-action_354 (376) = happyShift action_198-action_354 (377) = happyShift action_199-action_354 (379) = happyShift action_102-action_354 (380) = happyShift action_103-action_354 (100) = happyGoto action_164-action_354 (104) = happyGoto action_563-action_354 (106) = happyGoto action_346-action_354 (107) = happyGoto action_169-action_354 (142) = happyGoto action_170-action_354 (202) = happyGoto action_172-action_354 (203) = happyGoto action_173-action_354 (205) = happyGoto action_174-action_354 (206) = happyGoto action_175-action_354 (215) = happyGoto action_176-action_354 (217) = happyGoto action_177-action_354 (227) = happyGoto action_178-action_354 _ = happyFail--action_355 (313) = happyShift action_562-action_355 (114) = happyGoto action_561-action_355 _ = happyReduce_294--action_356 (319) = happyShift action_560-action_356 _ = happyFail--action_357 _ = happyReduce_135--action_358 (310) = happyShift action_558-action_358 (313) = happyShift action_559-action_358 (138) = happyGoto action_555-action_358 (139) = happyGoto action_556-action_358 (140) = happyGoto action_557-action_358 _ = happyFail--action_359 _ = happyReduce_566--action_360 (244) = happyShift action_36-action_360 (245) = happyShift action_37-action_360 (246) = happyShift action_38-action_360 (251) = happyShift action_39-action_360 (253) = happyShift action_40-action_360 (254) = happyShift action_41-action_360 (261) = happyShift action_45-action_360 (265) = happyShift action_46-action_360 (269) = happyShift action_47-action_360 (270) = happyShift action_48-action_360 (272) = happyShift action_49-action_360 (273) = happyShift action_50-action_360 (274) = happyShift action_51-action_360 (275) = happyShift action_52-action_360 (276) = happyShift action_53-action_360 (277) = happyShift action_54-action_360 (278) = happyShift action_55-action_360 (279) = happyShift action_56-action_360 (280) = happyShift action_57-action_360 (281) = happyShift action_58-action_360 (282) = happyShift action_59-action_360 (283) = happyShift action_60-action_360 (284) = happyShift action_61-action_360 (286) = happyShift action_62-action_360 (294) = happyShift action_66-action_360 (295) = happyShift action_67-action_360 (296) = happyShift action_68-action_360 (311) = happyShift action_69-action_360 (317) = happyShift action_70-action_360 (320) = happyShift action_71-action_360 (332) = happyShift action_72-action_360 (334) = happyShift action_73-action_360 (336) = happyShift action_107-action_360 (338) = happyShift action_75-action_360 (340) = happyShift action_76-action_360 (345) = happyShift action_77-action_360 (346) = happyShift action_78-action_360 (347) = happyShift action_79-action_360 (350) = happyShift action_80-action_360 (351) = happyShift action_81-action_360 (354) = happyShift action_82-action_360 (355) = happyShift action_83-action_360 (356) = happyShift action_84-action_360 (357) = happyShift action_85-action_360 (358) = happyShift action_86-action_360 (359) = happyShift action_87-action_360 (360) = happyShift action_88-action_360 (361) = happyShift action_89-action_360 (362) = happyShift action_90-action_360 (363) = happyShift action_91-action_360 (364) = happyShift action_92-action_360 (365) = happyShift action_93-action_360 (366) = happyShift action_94-action_360 (371) = happyShift action_95-action_360 (372) = happyShift action_96-action_360 (373) = happyShift action_97-action_360 (374) = happyShift action_98-action_360 (376) = happyShift action_99-action_360 (377) = happyShift action_100-action_360 (378) = happyShift action_101-action_360 (379) = happyShift action_102-action_360 (380) = happyShift action_103-action_360 (38) = happyGoto action_13-action_360 (142) = happyGoto action_16-action_360 (145) = happyGoto action_554-action_360 (147) = happyGoto action_19-action_360 (148) = happyGoto action_20-action_360 (149) = happyGoto action_21-action_360 (150) = happyGoto action_22-action_360 (151) = happyGoto action_23-action_360 (152) = happyGoto action_24-action_360 (192) = happyGoto action_25-action_360 (195) = happyGoto action_26-action_360 (198) = happyGoto action_27-action_360 (219) = happyGoto action_29-action_360 (220) = happyGoto action_30-action_360 (221) = happyGoto action_106-action_360 (227) = happyGoto action_32-action_360 (229) = happyGoto action_33-action_360 (230) = happyGoto action_34-action_360 (233) = happyGoto action_35-action_360 _ = happyFail--action_361 _ = happyReduce_565--action_362 (245) = happyShift action_37-action_362 (253) = happyShift action_40-action_362 (265) = happyShift action_46-action_362 (270) = happyShift action_553-action_362 (272) = happyShift action_49-action_362 (273) = happyShift action_50-action_362 (274) = happyShift action_51-action_362 (275) = happyShift action_180-action_362 (276) = happyShift action_181-action_362 (277) = happyShift action_182-action_362 (280) = happyShift action_57-action_362 (281) = happyShift action_58-action_362 (282) = happyShift action_59-action_362 (283) = happyShift action_60-action_362 (286) = happyShift action_62-action_362 (299) = happyShift action_183-action_362 (300) = happyShift action_184-action_362 (321) = happyShift action_185-action_362 (328) = happyShift action_186-action_362 (332) = happyShift action_187-action_362 (334) = happyShift action_188-action_362 (336) = happyShift action_189-action_362 (338) = happyShift action_190-action_362 (345) = happyShift action_191-action_362 (346) = happyShift action_192-action_362 (347) = happyShift action_193-action_362 (351) = happyShift action_194-action_362 (355) = happyShift action_195-action_362 (356) = happyShift action_84-action_362 (358) = happyShift action_196-action_362 (359) = happyShift action_197-action_362 (376) = happyShift action_198-action_362 (377) = happyShift action_199-action_362 (379) = happyShift action_102-action_362 (380) = happyShift action_103-action_362 (95) = happyGoto action_549-action_362 (96) = happyGoto action_459-action_362 (100) = happyGoto action_164-action_362 (101) = happyGoto action_350-action_362 (102) = happyGoto action_460-action_362 (103) = happyGoto action_550-action_362 (104) = happyGoto action_167-action_362 (105) = happyGoto action_462-action_362 (106) = happyGoto action_551-action_362 (107) = happyGoto action_169-action_362 (142) = happyGoto action_170-action_362 (192) = happyGoto action_552-action_362 (202) = happyGoto action_172-action_362 (203) = happyGoto action_173-action_362 (205) = happyGoto action_174-action_362 (206) = happyGoto action_175-action_362 (215) = happyGoto action_176-action_362 (217) = happyGoto action_177-action_362 (227) = happyGoto action_178-action_362 _ = happyFail--action_363 (245) = happyShift action_37-action_363 (253) = happyShift action_40-action_363 (265) = happyShift action_46-action_363 (272) = happyShift action_49-action_363 (273) = happyShift action_50-action_363 (274) = happyShift action_51-action_363 (275) = happyShift action_180-action_363 (276) = happyShift action_181-action_363 (277) = happyShift action_182-action_363 (280) = happyShift action_57-action_363 (281) = happyShift action_58-action_363 (282) = happyShift action_59-action_363 (283) = happyShift action_60-action_363 (286) = happyShift action_62-action_363 (299) = happyShift action_183-action_363 (300) = happyShift action_184-action_363 (321) = happyShift action_185-action_363 (328) = happyShift action_186-action_363 (332) = happyShift action_187-action_363 (334) = happyShift action_188-action_363 (336) = happyShift action_189-action_363 (338) = happyShift action_190-action_363 (345) = happyShift action_191-action_363 (346) = happyShift action_192-action_363 (347) = happyShift action_193-action_363 (351) = happyShift action_194-action_363 (355) = happyShift action_195-action_363 (358) = happyShift action_196-action_363 (359) = happyShift action_197-action_363 (376) = happyShift action_198-action_363 (377) = happyShift action_199-action_363 (379) = happyShift action_102-action_363 (380) = happyShift action_103-action_363 (60) = happyGoto action_548-action_363 (100) = happyGoto action_164-action_363 (103) = happyGoto action_356-action_363 (104) = happyGoto action_357-action_363 (106) = happyGoto action_168-action_363 (107) = happyGoto action_169-action_363 (142) = happyGoto action_170-action_363 (202) = happyGoto action_172-action_363 (203) = happyGoto action_173-action_363 (205) = happyGoto action_174-action_363 (206) = happyGoto action_175-action_363 (215) = happyGoto action_176-action_363 (217) = happyGoto action_177-action_363 (227) = happyGoto action_178-action_363 _ = happyFail--action_364 (245) = happyShift action_37-action_364 (253) = happyShift action_40-action_364 (265) = happyShift action_46-action_364 (272) = happyShift action_49-action_364 (273) = happyShift action_50-action_364 (274) = happyShift action_51-action_364 (275) = happyShift action_180-action_364 (276) = happyShift action_181-action_364 (277) = happyShift action_182-action_364 (280) = happyShift action_57-action_364 (281) = happyShift action_58-action_364 (282) = happyShift action_59-action_364 (283) = happyShift action_60-action_364 (286) = happyShift action_62-action_364 (299) = happyShift action_183-action_364 (300) = happyShift action_184-action_364 (321) = happyShift action_185-action_364 (328) = happyShift action_186-action_364 (332) = happyShift action_187-action_364 (334) = happyShift action_188-action_364 (336) = happyShift action_189-action_364 (338) = happyShift action_190-action_364 (345) = happyShift action_191-action_364 (346) = happyShift action_192-action_364 (347) = happyShift action_193-action_364 (351) = happyShift action_194-action_364 (355) = happyShift action_195-action_364 (358) = happyShift action_196-action_364 (359) = happyShift action_197-action_364 (376) = happyShift action_198-action_364 (377) = happyShift action_199-action_364 (379) = happyShift action_102-action_364 (380) = happyShift action_103-action_364 (60) = happyGoto action_547-action_364 (100) = happyGoto action_164-action_364 (103) = happyGoto action_356-action_364 (104) = happyGoto action_357-action_364 (106) = happyGoto action_168-action_364 (107) = happyGoto action_169-action_364 (142) = happyGoto action_170-action_364 (202) = happyGoto action_172-action_364 (203) = happyGoto action_173-action_364 (205) = happyGoto action_174-action_364 (206) = happyGoto action_175-action_364 (215) = happyGoto action_176-action_364 (217) = happyGoto action_177-action_364 (227) = happyGoto action_178-action_364 _ = happyFail--action_365 (358) = happyShift action_546-action_365 _ = happyFail--action_366 (347) = happyShift action_544-action_366 (351) = happyShift action_545-action_366 (235) = happyGoto action_543-action_366 _ = happyFail--action_367 (315) = happyShift action_542-action_367 _ = happyReduce_430--action_368 (308) = happyShift action_212-action_368 (309) = happyShift action_381-action_368 (320) = happyShift action_213-action_368 (321) = happyShift action_214-action_368 (322) = happyShift action_215-action_368 (323) = happyShift action_382-action_368 (324) = happyShift action_383-action_368 (325) = happyShift action_384-action_368 (326) = happyShift action_385-action_368 (327) = happyShift action_216-action_368 (344) = happyShift action_220-action_368 (348) = happyShift action_221-action_368 (349) = happyShift action_222-action_368 (352) = happyShift action_223-action_368 (353) = happyShift action_224-action_368 (200) = happyGoto action_359-action_368 (211) = happyGoto action_541-action_368 (213) = happyGoto action_361-action_368 (222) = happyGoto action_205-action_368 (224) = happyGoto action_206-action_368 (225) = happyGoto action_207-action_368 (226) = happyGoto action_208-action_368 (228) = happyGoto action_209-action_368 (231) = happyGoto action_210-action_368 (232) = happyGoto action_211-action_368 _ = happyReduce_369--action_369 (337) = happyShift action_540-action_369 (343) = happyShift action_244-action_369 (159) = happyGoto action_515-action_369 (236) = happyGoto action_516-action_369 _ = happyFail--action_370 (337) = happyShift action_539-action_370 _ = happyFail--action_371 _ = happyReduce_568--action_372 (244) = happyShift action_36-action_372 (245) = happyShift action_37-action_372 (246) = happyShift action_38-action_372 (251) = happyShift action_39-action_372 (253) = happyShift action_40-action_372 (254) = happyShift action_41-action_372 (261) = happyShift action_45-action_372 (265) = happyShift action_46-action_372 (269) = happyShift action_47-action_372 (270) = happyShift action_48-action_372 (272) = happyShift action_49-action_372 (273) = happyShift action_50-action_372 (274) = happyShift action_51-action_372 (275) = happyShift action_52-action_372 (276) = happyShift action_53-action_372 (277) = happyShift action_54-action_372 (278) = happyShift action_55-action_372 (279) = happyShift action_56-action_372 (280) = happyShift action_57-action_372 (281) = happyShift action_58-action_372 (282) = happyShift action_59-action_372 (283) = happyShift action_60-action_372 (284) = happyShift action_61-action_372 (286) = happyShift action_62-action_372 (294) = happyShift action_66-action_372 (295) = happyShift action_67-action_372 (296) = happyShift action_68-action_372 (311) = happyShift action_69-action_372 (317) = happyShift action_70-action_372 (320) = happyShift action_71-action_372 (332) = happyShift action_72-action_372 (334) = happyShift action_73-action_372 (336) = happyShift action_107-action_372 (338) = happyShift action_75-action_372 (340) = happyShift action_76-action_372 (345) = happyShift action_77-action_372 (346) = happyShift action_78-action_372 (347) = happyShift action_79-action_372 (350) = happyShift action_80-action_372 (351) = happyShift action_81-action_372 (354) = happyShift action_82-action_372 (355) = happyShift action_83-action_372 (356) = happyShift action_84-action_372 (357) = happyShift action_85-action_372 (358) = happyShift action_86-action_372 (359) = happyShift action_87-action_372 (360) = happyShift action_88-action_372 (361) = happyShift action_89-action_372 (362) = happyShift action_90-action_372 (363) = happyShift action_91-action_372 (364) = happyShift action_92-action_372 (365) = happyShift action_93-action_372 (366) = happyShift action_94-action_372 (371) = happyShift action_95-action_372 (372) = happyShift action_96-action_372 (373) = happyShift action_97-action_372 (374) = happyShift action_98-action_372 (376) = happyShift action_99-action_372 (377) = happyShift action_100-action_372 (378) = happyShift action_101-action_372 (379) = happyShift action_102-action_372 (380) = happyShift action_103-action_372 (38) = happyGoto action_13-action_372 (142) = happyGoto action_16-action_372 (144) = happyGoto action_538-action_372 (145) = happyGoto action_18-action_372 (147) = happyGoto action_19-action_372 (148) = happyGoto action_20-action_372 (149) = happyGoto action_21-action_372 (150) = happyGoto action_22-action_372 (151) = happyGoto action_23-action_372 (152) = happyGoto action_24-action_372 (192) = happyGoto action_25-action_372 (195) = happyGoto action_26-action_372 (198) = happyGoto action_27-action_372 (219) = happyGoto action_29-action_372 (220) = happyGoto action_30-action_372 (221) = happyGoto action_106-action_372 (227) = happyGoto action_32-action_372 (229) = happyGoto action_33-action_372 (230) = happyGoto action_34-action_372 (233) = happyGoto action_35-action_372 _ = happyFail--action_373 _ = happyReduce_567--action_374 _ = happyReduce_571--action_375 (337) = happyShift action_537-action_375 _ = happyReduce_599--action_376 (337) = happyReduce_601-action_376 _ = happyReduce_598--action_377 (337) = happyShift action_536-action_377 _ = happyReduce_534--action_378 (244) = happyShift action_36-action_378 (245) = happyShift action_37-action_378 (246) = happyShift action_38-action_378 (251) = happyShift action_39-action_378 (253) = happyShift action_40-action_378 (254) = happyShift action_41-action_378 (261) = happyShift action_45-action_378 (265) = happyShift action_46-action_378 (269) = happyShift action_47-action_378 (270) = happyShift action_48-action_378 (272) = happyShift action_49-action_378 (273) = happyShift action_50-action_378 (274) = happyShift action_51-action_378 (275) = happyShift action_52-action_378 (276) = happyShift action_53-action_378 (277) = happyShift action_54-action_378 (278) = happyShift action_55-action_378 (279) = happyShift action_56-action_378 (280) = happyShift action_57-action_378 (281) = happyShift action_58-action_378 (282) = happyShift action_59-action_378 (283) = happyShift action_60-action_378 (284) = happyShift action_61-action_378 (286) = happyShift action_62-action_378 (294) = happyShift action_66-action_378 (295) = happyShift action_67-action_378 (296) = happyShift action_68-action_378 (308) = happyShift action_212-action_378 (311) = happyShift action_69-action_378 (317) = happyShift action_70-action_378 (320) = happyShift action_71-action_378 (321) = happyShift action_214-action_378 (322) = happyShift action_215-action_378 (327) = happyShift action_216-action_378 (332) = happyShift action_72-action_378 (334) = happyShift action_73-action_378 (336) = happyShift action_107-action_378 (337) = happyShift action_535-action_378 (338) = happyShift action_75-action_378 (340) = happyShift action_76-action_378 (343) = happyShift action_513-action_378 (344) = happyShift action_380-action_378 (345) = happyShift action_77-action_378 (346) = happyShift action_78-action_378 (347) = happyShift action_79-action_378 (348) = happyShift action_221-action_378 (349) = happyShift action_222-action_378 (350) = happyShift action_80-action_378 (351) = happyShift action_81-action_378 (352) = happyShift action_223-action_378 (353) = happyShift action_224-action_378 (354) = happyShift action_82-action_378 (355) = happyShift action_83-action_378 (356) = happyShift action_84-action_378 (357) = happyShift action_85-action_378 (358) = happyShift action_86-action_378 (359) = happyShift action_87-action_378 (360) = happyShift action_88-action_378 (361) = happyShift action_89-action_378 (362) = happyShift action_90-action_378 (363) = happyShift action_91-action_378 (364) = happyShift action_92-action_378 (365) = happyShift action_93-action_378 (366) = happyShift action_94-action_378 (371) = happyShift action_95-action_378 (372) = happyShift action_96-action_378 (373) = happyShift action_97-action_378 (374) = happyShift action_98-action_378 (376) = happyShift action_99-action_378 (377) = happyShift action_100-action_378 (378) = happyShift action_101-action_378 (379) = happyShift action_102-action_378 (380) = happyShift action_103-action_378 (38) = happyGoto action_13-action_378 (142) = happyGoto action_16-action_378 (143) = happyGoto action_367-action_378 (144) = happyGoto action_368-action_378 (145) = happyGoto action_18-action_378 (147) = happyGoto action_19-action_378 (148) = happyGoto action_20-action_378 (149) = happyGoto action_21-action_378 (150) = happyGoto action_22-action_378 (151) = happyGoto action_23-action_378 (152) = happyGoto action_24-action_378 (157) = happyGoto action_510-action_378 (160) = happyGoto action_511-action_378 (192) = happyGoto action_25-action_378 (195) = happyGoto action_26-action_378 (198) = happyGoto action_27-action_378 (200) = happyGoto action_371-action_378 (212) = happyGoto action_372-action_378 (214) = happyGoto action_373-action_378 (219) = happyGoto action_29-action_378 (220) = happyGoto action_30-action_378 (221) = happyGoto action_106-action_378 (223) = happyGoto action_374-action_378 (224) = happyGoto action_407-action_378 (226) = happyGoto action_408-action_378 (227) = happyGoto action_32-action_378 (228) = happyGoto action_209-action_378 (229) = happyGoto action_33-action_378 (230) = happyGoto action_34-action_378 (231) = happyGoto action_210-action_378 (232) = happyGoto action_211-action_378 (233) = happyGoto action_35-action_378 _ = happyFail--action_379 (244) = happyShift action_36-action_379 (245) = happyShift action_37-action_379 (253) = happyShift action_40-action_379 (265) = happyShift action_46-action_379 (270) = happyShift action_48-action_379 (272) = happyShift action_49-action_379 (273) = happyShift action_50-action_379 (274) = happyShift action_51-action_379 (275) = happyShift action_52-action_379 (276) = happyShift action_53-action_379 (277) = happyShift action_54-action_379 (279) = happyShift action_56-action_379 (280) = happyShift action_57-action_379 (281) = happyShift action_58-action_379 (282) = happyShift action_59-action_379 (283) = happyShift action_60-action_379 (286) = happyShift action_62-action_379 (317) = happyShift action_70-action_379 (332) = happyShift action_72-action_379 (334) = happyShift action_73-action_379 (336) = happyShift action_107-action_379 (338) = happyShift action_75-action_379 (340) = happyShift action_76-action_379 (345) = happyShift action_77-action_379 (346) = happyShift action_78-action_379 (347) = happyShift action_79-action_379 (350) = happyShift action_80-action_379 (351) = happyShift action_81-action_379 (354) = happyShift action_82-action_379 (355) = happyShift action_83-action_379 (356) = happyShift action_84-action_379 (357) = happyShift action_85-action_379 (358) = happyShift action_86-action_379 (359) = happyShift action_87-action_379 (360) = happyShift action_88-action_379 (361) = happyShift action_89-action_379 (362) = happyShift action_90-action_379 (363) = happyShift action_91-action_379 (364) = happyShift action_92-action_379 (365) = happyShift action_93-action_379 (366) = happyShift action_94-action_379 (371) = happyShift action_95-action_379 (372) = happyShift action_96-action_379 (373) = happyShift action_97-action_379 (374) = happyShift action_98-action_379 (376) = happyShift action_99-action_379 (377) = happyShift action_100-action_379 (378) = happyShift action_101-action_379 (379) = happyShift action_102-action_379 (380) = happyShift action_103-action_379 (38) = happyGoto action_13-action_379 (142) = happyGoto action_16-action_379 (149) = happyGoto action_417-action_379 (150) = happyGoto action_22-action_379 (151) = happyGoto action_23-action_379 (152) = happyGoto action_24-action_379 (192) = happyGoto action_25-action_379 (195) = happyGoto action_26-action_379 (198) = happyGoto action_27-action_379 (219) = happyGoto action_29-action_379 (220) = happyGoto action_30-action_379 (221) = happyGoto action_106-action_379 (227) = happyGoto action_32-action_379 (229) = happyGoto action_33-action_379 (230) = happyGoto action_34-action_379 (233) = happyGoto action_35-action_379 _ = happyReduce_602--action_380 (245) = happyShift action_37-action_380 (253) = happyShift action_40-action_380 (265) = happyShift action_46-action_380 (270) = happyShift action_48-action_380 (272) = happyShift action_49-action_380 (273) = happyShift action_50-action_380 (274) = happyShift action_51-action_380 (275) = happyShift action_52-action_380 (276) = happyShift action_53-action_380 (277) = happyShift action_54-action_380 (279) = happyShift action_56-action_380 (280) = happyShift action_57-action_380 (281) = happyShift action_58-action_380 (282) = happyShift action_59-action_380 (283) = happyShift action_60-action_380 (286) = happyShift action_62-action_380 (346) = happyShift action_78-action_380 (347) = happyShift action_79-action_380 (350) = happyShift action_80-action_380 (351) = happyShift action_81-action_380 (354) = happyShift action_82-action_380 (355) = happyShift action_83-action_380 (220) = happyGoto action_534-action_380 (221) = happyGoto action_106-action_380 (227) = happyGoto action_32-action_380 (229) = happyGoto action_241-action_380 (230) = happyGoto action_34-action_380 _ = happyFail--action_381 (245) = happyShift action_37-action_381 (253) = happyShift action_40-action_381 (265) = happyShift action_46-action_381 (270) = happyShift action_179-action_381 (272) = happyShift action_49-action_381 (273) = happyShift action_50-action_381 (274) = happyShift action_51-action_381 (275) = happyShift action_180-action_381 (276) = happyShift action_181-action_381 (277) = happyShift action_182-action_381 (280) = happyShift action_57-action_381 (281) = happyShift action_58-action_381 (282) = happyShift action_59-action_381 (283) = happyShift action_60-action_381 (286) = happyShift action_62-action_381 (299) = happyShift action_183-action_381 (300) = happyShift action_184-action_381 (321) = happyShift action_185-action_381 (328) = happyShift action_186-action_381 (332) = happyShift action_187-action_381 (334) = happyShift action_188-action_381 (336) = happyShift action_189-action_381 (338) = happyShift action_190-action_381 (345) = happyShift action_191-action_381 (346) = happyShift action_192-action_381 (347) = happyShift action_193-action_381 (351) = happyShift action_194-action_381 (355) = happyShift action_195-action_381 (356) = happyShift action_84-action_381 (358) = happyShift action_196-action_381 (359) = happyShift action_197-action_381 (376) = happyShift action_198-action_381 (377) = happyShift action_199-action_381 (379) = happyShift action_102-action_381 (380) = happyShift action_103-action_381 (95) = happyGoto action_533-action_381 (100) = happyGoto action_164-action_381 (101) = happyGoto action_350-action_381 (103) = happyGoto action_166-action_381 (104) = happyGoto action_167-action_381 (106) = happyGoto action_168-action_381 (107) = happyGoto action_169-action_381 (142) = happyGoto action_170-action_381 (192) = happyGoto action_171-action_381 (202) = happyGoto action_172-action_381 (203) = happyGoto action_173-action_381 (205) = happyGoto action_174-action_381 (206) = happyGoto action_175-action_381 (215) = happyGoto action_176-action_381 (217) = happyGoto action_177-action_381 (227) = happyGoto action_178-action_381 _ = happyFail--action_382 (244) = happyShift action_36-action_382 (245) = happyShift action_37-action_382 (246) = happyShift action_38-action_382 (251) = happyShift action_39-action_382 (253) = happyShift action_40-action_382 (254) = happyShift action_41-action_382 (261) = happyShift action_45-action_382 (265) = happyShift action_46-action_382 (269) = happyShift action_47-action_382 (270) = happyShift action_48-action_382 (272) = happyShift action_49-action_382 (273) = happyShift action_50-action_382 (274) = happyShift action_51-action_382 (275) = happyShift action_52-action_382 (276) = happyShift action_53-action_382 (277) = happyShift action_54-action_382 (278) = happyShift action_55-action_382 (279) = happyShift action_56-action_382 (280) = happyShift action_57-action_382 (281) = happyShift action_58-action_382 (282) = happyShift action_59-action_382 (283) = happyShift action_60-action_382 (284) = happyShift action_61-action_382 (286) = happyShift action_62-action_382 (294) = happyShift action_66-action_382 (295) = happyShift action_67-action_382 (296) = happyShift action_68-action_382 (311) = happyShift action_69-action_382 (317) = happyShift action_70-action_382 (320) = happyShift action_71-action_382 (332) = happyShift action_72-action_382 (334) = happyShift action_73-action_382 (336) = happyShift action_107-action_382 (338) = happyShift action_75-action_382 (340) = happyShift action_76-action_382 (345) = happyShift action_77-action_382 (346) = happyShift action_78-action_382 (347) = happyShift action_79-action_382 (350) = happyShift action_80-action_382 (351) = happyShift action_81-action_382 (354) = happyShift action_82-action_382 (355) = happyShift action_83-action_382 (356) = happyShift action_84-action_382 (357) = happyShift action_85-action_382 (358) = happyShift action_86-action_382 (359) = happyShift action_87-action_382 (360) = happyShift action_88-action_382 (361) = happyShift action_89-action_382 (362) = happyShift action_90-action_382 (363) = happyShift action_91-action_382 (364) = happyShift action_92-action_382 (365) = happyShift action_93-action_382 (366) = happyShift action_94-action_382 (371) = happyShift action_95-action_382 (372) = happyShift action_96-action_382 (373) = happyShift action_97-action_382 (374) = happyShift action_98-action_382 (376) = happyShift action_99-action_382 (377) = happyShift action_100-action_382 (378) = happyShift action_101-action_382 (379) = happyShift action_102-action_382 (380) = happyShift action_103-action_382 (38) = happyGoto action_13-action_382 (142) = happyGoto action_16-action_382 (143) = happyGoto action_532-action_382 (144) = happyGoto action_105-action_382 (145) = happyGoto action_18-action_382 (147) = happyGoto action_19-action_382 (148) = happyGoto action_20-action_382 (149) = happyGoto action_21-action_382 (150) = happyGoto action_22-action_382 (151) = happyGoto action_23-action_382 (152) = happyGoto action_24-action_382 (192) = happyGoto action_25-action_382 (195) = happyGoto action_26-action_382 (198) = happyGoto action_27-action_382 (219) = happyGoto action_29-action_382 (220) = happyGoto action_30-action_382 (221) = happyGoto action_106-action_382 (227) = happyGoto action_32-action_382 (229) = happyGoto action_33-action_382 (230) = happyGoto action_34-action_382 (233) = happyGoto action_35-action_382 _ = happyFail--action_383 (244) = happyShift action_36-action_383 (245) = happyShift action_37-action_383 (246) = happyShift action_38-action_383 (251) = happyShift action_39-action_383 (253) = happyShift action_40-action_383 (254) = happyShift action_41-action_383 (261) = happyShift action_45-action_383 (265) = happyShift action_46-action_383 (269) = happyShift action_47-action_383 (270) = happyShift action_48-action_383 (272) = happyShift action_49-action_383 (273) = happyShift action_50-action_383 (274) = happyShift action_51-action_383 (275) = happyShift action_52-action_383 (276) = happyShift action_53-action_383 (277) = happyShift action_54-action_383 (278) = happyShift action_55-action_383 (279) = happyShift action_56-action_383 (280) = happyShift action_57-action_383 (281) = happyShift action_58-action_383 (282) = happyShift action_59-action_383 (283) = happyShift action_60-action_383 (284) = happyShift action_61-action_383 (286) = happyShift action_62-action_383 (294) = happyShift action_66-action_383 (295) = happyShift action_67-action_383 (296) = happyShift action_68-action_383 (311) = happyShift action_69-action_383 (317) = happyShift action_70-action_383 (320) = happyShift action_71-action_383 (332) = happyShift action_72-action_383 (334) = happyShift action_73-action_383 (336) = happyShift action_107-action_383 (338) = happyShift action_75-action_383 (340) = happyShift action_76-action_383 (345) = happyShift action_77-action_383 (346) = happyShift action_78-action_383 (347) = happyShift action_79-action_383 (350) = happyShift action_80-action_383 (351) = happyShift action_81-action_383 (354) = happyShift action_82-action_383 (355) = happyShift action_83-action_383 (356) = happyShift action_84-action_383 (357) = happyShift action_85-action_383 (358) = happyShift action_86-action_383 (359) = happyShift action_87-action_383 (360) = happyShift action_88-action_383 (361) = happyShift action_89-action_383 (362) = happyShift action_90-action_383 (363) = happyShift action_91-action_383 (364) = happyShift action_92-action_383 (365) = happyShift action_93-action_383 (366) = happyShift action_94-action_383 (371) = happyShift action_95-action_383 (372) = happyShift action_96-action_383 (373) = happyShift action_97-action_383 (374) = happyShift action_98-action_383 (376) = happyShift action_99-action_383 (377) = happyShift action_100-action_383 (378) = happyShift action_101-action_383 (379) = happyShift action_102-action_383 (380) = happyShift action_103-action_383 (38) = happyGoto action_13-action_383 (142) = happyGoto action_16-action_383 (143) = happyGoto action_531-action_383 (144) = happyGoto action_105-action_383 (145) = happyGoto action_18-action_383 (147) = happyGoto action_19-action_383 (148) = happyGoto action_20-action_383 (149) = happyGoto action_21-action_383 (150) = happyGoto action_22-action_383 (151) = happyGoto action_23-action_383 (152) = happyGoto action_24-action_383 (192) = happyGoto action_25-action_383 (195) = happyGoto action_26-action_383 (198) = happyGoto action_27-action_383 (219) = happyGoto action_29-action_383 (220) = happyGoto action_30-action_383 (221) = happyGoto action_106-action_383 (227) = happyGoto action_32-action_383 (229) = happyGoto action_33-action_383 (230) = happyGoto action_34-action_383 (233) = happyGoto action_35-action_383 _ = happyFail--action_384 (244) = happyShift action_36-action_384 (245) = happyShift action_37-action_384 (246) = happyShift action_38-action_384 (251) = happyShift action_39-action_384 (253) = happyShift action_40-action_384 (254) = happyShift action_41-action_384 (261) = happyShift action_45-action_384 (265) = happyShift action_46-action_384 (269) = happyShift action_47-action_384 (270) = happyShift action_48-action_384 (272) = happyShift action_49-action_384 (273) = happyShift action_50-action_384 (274) = happyShift action_51-action_384 (275) = happyShift action_52-action_384 (276) = happyShift action_53-action_384 (277) = happyShift action_54-action_384 (278) = happyShift action_55-action_384 (279) = happyShift action_56-action_384 (280) = happyShift action_57-action_384 (281) = happyShift action_58-action_384 (282) = happyShift action_59-action_384 (283) = happyShift action_60-action_384 (284) = happyShift action_61-action_384 (286) = happyShift action_62-action_384 (294) = happyShift action_66-action_384 (295) = happyShift action_67-action_384 (296) = happyShift action_68-action_384 (311) = happyShift action_69-action_384 (317) = happyShift action_70-action_384 (320) = happyShift action_71-action_384 (332) = happyShift action_72-action_384 (334) = happyShift action_73-action_384 (336) = happyShift action_107-action_384 (338) = happyShift action_75-action_384 (340) = happyShift action_76-action_384 (345) = happyShift action_77-action_384 (346) = happyShift action_78-action_384 (347) = happyShift action_79-action_384 (350) = happyShift action_80-action_384 (351) = happyShift action_81-action_384 (354) = happyShift action_82-action_384 (355) = happyShift action_83-action_384 (356) = happyShift action_84-action_384 (357) = happyShift action_85-action_384 (358) = happyShift action_86-action_384 (359) = happyShift action_87-action_384 (360) = happyShift action_88-action_384 (361) = happyShift action_89-action_384 (362) = happyShift action_90-action_384 (363) = happyShift action_91-action_384 (364) = happyShift action_92-action_384 (365) = happyShift action_93-action_384 (366) = happyShift action_94-action_384 (371) = happyShift action_95-action_384 (372) = happyShift action_96-action_384 (373) = happyShift action_97-action_384 (374) = happyShift action_98-action_384 (376) = happyShift action_99-action_384 (377) = happyShift action_100-action_384 (378) = happyShift action_101-action_384 (379) = happyShift action_102-action_384 (380) = happyShift action_103-action_384 (38) = happyGoto action_13-action_384 (142) = happyGoto action_16-action_384 (143) = happyGoto action_530-action_384 (144) = happyGoto action_105-action_384 (145) = happyGoto action_18-action_384 (147) = happyGoto action_19-action_384 (148) = happyGoto action_20-action_384 (149) = happyGoto action_21-action_384 (150) = happyGoto action_22-action_384 (151) = happyGoto action_23-action_384 (152) = happyGoto action_24-action_384 (192) = happyGoto action_25-action_384 (195) = happyGoto action_26-action_384 (198) = happyGoto action_27-action_384 (219) = happyGoto action_29-action_384 (220) = happyGoto action_30-action_384 (221) = happyGoto action_106-action_384 (227) = happyGoto action_32-action_384 (229) = happyGoto action_33-action_384 (230) = happyGoto action_34-action_384 (233) = happyGoto action_35-action_384 _ = happyFail--action_385 (244) = happyShift action_36-action_385 (245) = happyShift action_37-action_385 (246) = happyShift action_38-action_385 (251) = happyShift action_39-action_385 (253) = happyShift action_40-action_385 (254) = happyShift action_41-action_385 (261) = happyShift action_45-action_385 (265) = happyShift action_46-action_385 (269) = happyShift action_47-action_385 (270) = happyShift action_48-action_385 (272) = happyShift action_49-action_385 (273) = happyShift action_50-action_385 (274) = happyShift action_51-action_385 (275) = happyShift action_52-action_385 (276) = happyShift action_53-action_385 (277) = happyShift action_54-action_385 (278) = happyShift action_55-action_385 (279) = happyShift action_56-action_385 (280) = happyShift action_57-action_385 (281) = happyShift action_58-action_385 (282) = happyShift action_59-action_385 (283) = happyShift action_60-action_385 (284) = happyShift action_61-action_385 (286) = happyShift action_62-action_385 (294) = happyShift action_66-action_385 (295) = happyShift action_67-action_385 (296) = happyShift action_68-action_385 (311) = happyShift action_69-action_385 (317) = happyShift action_70-action_385 (320) = happyShift action_71-action_385 (332) = happyShift action_72-action_385 (334) = happyShift action_73-action_385 (336) = happyShift action_107-action_385 (338) = happyShift action_75-action_385 (340) = happyShift action_76-action_385 (345) = happyShift action_77-action_385 (346) = happyShift action_78-action_385 (347) = happyShift action_79-action_385 (350) = happyShift action_80-action_385 (351) = happyShift action_81-action_385 (354) = happyShift action_82-action_385 (355) = happyShift action_83-action_385 (356) = happyShift action_84-action_385 (357) = happyShift action_85-action_385 (358) = happyShift action_86-action_385 (359) = happyShift action_87-action_385 (360) = happyShift action_88-action_385 (361) = happyShift action_89-action_385 (362) = happyShift action_90-action_385 (363) = happyShift action_91-action_385 (364) = happyShift action_92-action_385 (365) = happyShift action_93-action_385 (366) = happyShift action_94-action_385 (371) = happyShift action_95-action_385 (372) = happyShift action_96-action_385 (373) = happyShift action_97-action_385 (374) = happyShift action_98-action_385 (376) = happyShift action_99-action_385 (377) = happyShift action_100-action_385 (378) = happyShift action_101-action_385 (379) = happyShift action_102-action_385 (380) = happyShift action_103-action_385 (38) = happyGoto action_13-action_385 (142) = happyGoto action_16-action_385 (143) = happyGoto action_529-action_385 (144) = happyGoto action_105-action_385 (145) = happyGoto action_18-action_385 (147) = happyGoto action_19-action_385 (148) = happyGoto action_20-action_385 (149) = happyGoto action_21-action_385 (150) = happyGoto action_22-action_385 (151) = happyGoto action_23-action_385 (152) = happyGoto action_24-action_385 (192) = happyGoto action_25-action_385 (195) = happyGoto action_26-action_385 (198) = happyGoto action_27-action_385 (219) = happyGoto action_29-action_385 (220) = happyGoto action_30-action_385 (221) = happyGoto action_106-action_385 (227) = happyGoto action_32-action_385 (229) = happyGoto action_33-action_385 (230) = happyGoto action_34-action_385 (233) = happyGoto action_35-action_385 _ = happyFail--action_386 _ = happyReduce_416--action_387 _ = happyReduce_536--action_388 _ = happyReduce_415--action_389 (333) = happyShift action_276-action_389 _ = happyFail--action_390 (335) = happyShift action_274-action_390 _ = happyFail--action_391 (315) = happyShift action_264-action_391 (317) = happyShift action_265-action_391 (318) = happyShift action_266-action_391 (322) = happyShift action_267-action_391 (337) = happyShift action_528-action_391 (343) = happyShift action_244-action_391 (348) = happyShift action_269-action_391 (349) = happyShift action_270-action_391 (352) = happyShift action_271-action_391 (353) = happyShift action_272-action_391 (207) = happyGoto action_261-action_391 (208) = happyGoto action_262-action_391 (236) = happyGoto action_263-action_391 _ = happyFail--action_392 (339) = happyShift action_527-action_392 (343) = happyShift action_244-action_392 (236) = happyGoto action_258-action_392 _ = happyFail--action_393 (337) = happyShift action_526-action_393 _ = happyFail--action_394 (375) = happyShift action_525-action_394 _ = happyFail--action_395 (244) = happyShift action_36-action_395 (245) = happyShift action_37-action_395 (246) = happyShift action_38-action_395 (247) = happyShift action_130-action_395 (248) = happyShift action_131-action_395 (249) = happyShift action_132-action_395 (250) = happyShift action_133-action_395 (251) = happyShift action_39-action_395 (253) = happyShift action_40-action_395 (254) = happyShift action_41-action_395 (257) = happyShift action_42-action_395 (258) = happyShift action_43-action_395 (259) = happyShift action_44-action_395 (260) = happyShift action_134-action_395 (261) = happyShift action_45-action_395 (263) = happyShift action_135-action_395 (265) = happyShift action_46-action_395 (267) = happyShift action_136-action_395 (269) = happyShift action_47-action_395 (270) = happyShift action_48-action_395 (271) = happyShift action_137-action_395 (272) = happyShift action_49-action_395 (273) = happyShift action_50-action_395 (274) = happyShift action_51-action_395 (275) = happyShift action_52-action_395 (276) = happyShift action_53-action_395 (277) = happyShift action_54-action_395 (278) = happyShift action_55-action_395 (279) = happyShift action_56-action_395 (280) = happyShift action_57-action_395 (281) = happyShift action_58-action_395 (282) = happyShift action_59-action_395 (283) = happyShift action_60-action_395 (284) = happyShift action_61-action_395 (286) = happyShift action_62-action_395 (289) = happyShift action_63-action_395 (290) = happyShift action_64-action_395 (291) = happyShift action_65-action_395 (293) = happyShift action_138-action_395 (294) = happyShift action_66-action_395 (295) = happyShift action_67-action_395 (296) = happyShift action_68-action_395 (297) = happyShift action_139-action_395 (298) = happyShift action_140-action_395 (301) = happyShift action_141-action_395 (302) = happyShift action_142-action_395 (303) = happyShift action_143-action_395 (304) = happyShift action_144-action_395 (311) = happyShift action_69-action_395 (317) = happyShift action_70-action_395 (320) = happyShift action_71-action_395 (321) = happyShift action_145-action_395 (332) = happyShift action_72-action_395 (334) = happyShift action_73-action_395 (336) = happyShift action_74-action_395 (338) = happyShift action_75-action_395 (340) = happyShift action_76-action_395 (345) = happyShift action_77-action_395 (346) = happyShift action_78-action_395 (347) = happyShift action_79-action_395 (350) = happyShift action_80-action_395 (351) = happyShift action_81-action_395 (354) = happyShift action_82-action_395 (355) = happyShift action_83-action_395 (356) = happyShift action_84-action_395 (357) = happyShift action_85-action_395 (358) = happyShift action_86-action_395 (359) = happyShift action_87-action_395 (360) = happyShift action_88-action_395 (361) = happyShift action_89-action_395 (362) = happyShift action_90-action_395 (363) = happyShift action_91-action_395 (364) = happyShift action_92-action_395 (365) = happyShift action_93-action_395 (366) = happyShift action_94-action_395 (367) = happyShift action_146-action_395 (368) = happyShift action_147-action_395 (369) = happyShift action_148-action_395 (370) = happyShift action_149-action_395 (371) = happyShift action_95-action_395 (372) = happyShift action_96-action_395 (373) = happyShift action_97-action_395 (374) = happyShift action_98-action_395 (376) = happyShift action_99-action_395 (377) = happyShift action_100-action_395 (378) = happyShift action_101-action_395 (379) = happyShift action_102-action_395 (380) = happyShift action_103-action_395 (25) = happyGoto action_522-action_395 (38) = happyGoto action_13-action_395 (49) = happyGoto action_14-action_395 (51) = happyGoto action_236-action_395 (52) = happyGoto action_237-action_395 (53) = happyGoto action_115-action_395 (54) = happyGoto action_116-action_395 (55) = happyGoto action_117-action_395 (58) = happyGoto action_118-action_395 (62) = happyGoto action_119-action_395 (88) = happyGoto action_120-action_395 (135) = happyGoto action_121-action_395 (136) = happyGoto action_122-action_395 (137) = happyGoto action_123-action_395 (141) = happyGoto action_124-action_395 (142) = happyGoto action_16-action_395 (144) = happyGoto action_125-action_395 (145) = happyGoto action_18-action_395 (147) = happyGoto action_19-action_395 (148) = happyGoto action_20-action_395 (149) = happyGoto action_21-action_395 (150) = happyGoto action_22-action_395 (151) = happyGoto action_23-action_395 (152) = happyGoto action_24-action_395 (156) = happyGoto action_524-action_395 (192) = happyGoto action_25-action_395 (195) = happyGoto action_26-action_395 (198) = happyGoto action_27-action_395 (218) = happyGoto action_28-action_395 (219) = happyGoto action_29-action_395 (220) = happyGoto action_30-action_395 (221) = happyGoto action_31-action_395 (227) = happyGoto action_32-action_395 (229) = happyGoto action_33-action_395 (230) = happyGoto action_34-action_395 (233) = happyGoto action_35-action_395 (237) = happyGoto action_126-action_395 (238) = happyGoto action_127-action_395 (239) = happyGoto action_128-action_395 (240) = happyGoto action_129-action_395 _ = happyReduce_428--action_396 (244) = happyShift action_36-action_396 (245) = happyShift action_37-action_396 (246) = happyShift action_38-action_396 (247) = happyShift action_130-action_396 (248) = happyShift action_131-action_396 (249) = happyShift action_132-action_396 (250) = happyShift action_133-action_396 (251) = happyShift action_39-action_396 (253) = happyShift action_40-action_396 (254) = happyShift action_41-action_396 (257) = happyShift action_42-action_396 (258) = happyShift action_43-action_396 (259) = happyShift action_44-action_396 (260) = happyShift action_134-action_396 (261) = happyShift action_45-action_396 (263) = happyShift action_135-action_396 (265) = happyShift action_46-action_396 (267) = happyShift action_136-action_396 (269) = happyShift action_47-action_396 (270) = happyShift action_48-action_396 (271) = happyShift action_137-action_396 (272) = happyShift action_49-action_396 (273) = happyShift action_50-action_396 (274) = happyShift action_51-action_396 (275) = happyShift action_52-action_396 (276) = happyShift action_53-action_396 (277) = happyShift action_54-action_396 (278) = happyShift action_55-action_396 (279) = happyShift action_56-action_396 (280) = happyShift action_57-action_396 (281) = happyShift action_58-action_396 (282) = happyShift action_59-action_396 (283) = happyShift action_60-action_396 (284) = happyShift action_61-action_396 (286) = happyShift action_62-action_396 (289) = happyShift action_63-action_396 (290) = happyShift action_64-action_396 (291) = happyShift action_65-action_396 (293) = happyShift action_138-action_396 (294) = happyShift action_66-action_396 (295) = happyShift action_67-action_396 (296) = happyShift action_68-action_396 (297) = happyShift action_139-action_396 (298) = happyShift action_140-action_396 (301) = happyShift action_141-action_396 (302) = happyShift action_142-action_396 (303) = happyShift action_143-action_396 (304) = happyShift action_144-action_396 (311) = happyShift action_69-action_396 (317) = happyShift action_70-action_396 (320) = happyShift action_71-action_396 (321) = happyShift action_145-action_396 (332) = happyShift action_72-action_396 (334) = happyShift action_73-action_396 (336) = happyShift action_74-action_396 (338) = happyShift action_75-action_396 (340) = happyShift action_76-action_396 (345) = happyShift action_77-action_396 (346) = happyShift action_78-action_396 (347) = happyShift action_79-action_396 (350) = happyShift action_80-action_396 (351) = happyShift action_81-action_396 (354) = happyShift action_82-action_396 (355) = happyShift action_83-action_396 (356) = happyShift action_84-action_396 (357) = happyShift action_85-action_396 (358) = happyShift action_86-action_396 (359) = happyShift action_87-action_396 (360) = happyShift action_88-action_396 (361) = happyShift action_89-action_396 (362) = happyShift action_90-action_396 (363) = happyShift action_91-action_396 (364) = happyShift action_92-action_396 (365) = happyShift action_93-action_396 (366) = happyShift action_94-action_396 (367) = happyShift action_146-action_396 (368) = happyShift action_147-action_396 (369) = happyShift action_148-action_396 (370) = happyShift action_149-action_396 (371) = happyShift action_95-action_396 (372) = happyShift action_96-action_396 (373) = happyShift action_97-action_396 (374) = happyShift action_98-action_396 (376) = happyShift action_99-action_396 (377) = happyShift action_100-action_396 (378) = happyShift action_101-action_396 (379) = happyShift action_102-action_396 (380) = happyShift action_103-action_396 (25) = happyGoto action_522-action_396 (38) = happyGoto action_13-action_396 (49) = happyGoto action_14-action_396 (51) = happyGoto action_236-action_396 (52) = happyGoto action_237-action_396 (53) = happyGoto action_115-action_396 (54) = happyGoto action_116-action_396 (55) = happyGoto action_117-action_396 (58) = happyGoto action_118-action_396 (62) = happyGoto action_119-action_396 (88) = happyGoto action_120-action_396 (135) = happyGoto action_121-action_396 (136) = happyGoto action_122-action_396 (137) = happyGoto action_123-action_396 (141) = happyGoto action_124-action_396 (142) = happyGoto action_16-action_396 (144) = happyGoto action_125-action_396 (145) = happyGoto action_18-action_396 (147) = happyGoto action_19-action_396 (148) = happyGoto action_20-action_396 (149) = happyGoto action_21-action_396 (150) = happyGoto action_22-action_396 (151) = happyGoto action_23-action_396 (152) = happyGoto action_24-action_396 (156) = happyGoto action_523-action_396 (192) = happyGoto action_25-action_396 (195) = happyGoto action_26-action_396 (198) = happyGoto action_27-action_396 (218) = happyGoto action_28-action_396 (219) = happyGoto action_29-action_396 (220) = happyGoto action_30-action_396 (221) = happyGoto action_31-action_396 (227) = happyGoto action_32-action_396 (229) = happyGoto action_33-action_396 (230) = happyGoto action_34-action_396 (233) = happyGoto action_35-action_396 (237) = happyGoto action_126-action_396 (238) = happyGoto action_127-action_396 (239) = happyGoto action_128-action_396 (240) = happyGoto action_129-action_396 _ = happyReduce_428--action_397 (375) = happyShift action_521-action_397 _ = happyFail--action_398 (308) = happyShift action_212-action_398 (320) = happyShift action_213-action_398 (321) = happyShift action_214-action_398 (322) = happyShift action_215-action_398 (327) = happyShift action_216-action_398 (344) = happyShift action_220-action_398 (348) = happyShift action_221-action_398 (349) = happyShift action_222-action_398 (352) = happyShift action_223-action_398 (353) = happyShift action_224-action_398 (375) = happyShift action_520-action_398 (200) = happyGoto action_359-action_398 (211) = happyGoto action_360-action_398 (213) = happyGoto action_361-action_398 (222) = happyGoto action_205-action_398 (224) = happyGoto action_206-action_398 (225) = happyGoto action_207-action_398 (226) = happyGoto action_208-action_398 (228) = happyGoto action_209-action_398 (231) = happyGoto action_210-action_398 (232) = happyGoto action_211-action_398 _ = happyFail--action_399 (375) = happyShift action_519-action_399 _ = happyFail--action_400 _ = happyReduce_414--action_401 _ = happyReduce_413--action_402 (308) = happyShift action_212-action_402 (320) = happyShift action_213-action_402 (321) = happyShift action_214-action_402 (322) = happyShift action_215-action_402 (327) = happyShift action_216-action_402 (337) = happyShift action_250-action_402 (343) = happyShift action_244-action_402 (348) = happyShift action_221-action_402 (349) = happyShift action_222-action_402 (352) = happyShift action_223-action_402 (353) = happyShift action_224-action_402 (224) = happyGoto action_245-action_402 (225) = happyGoto action_246-action_402 (226) = happyGoto action_208-action_402 (228) = happyGoto action_209-action_402 (231) = happyGoto action_247-action_402 (232) = happyGoto action_211-action_402 (236) = happyGoto action_248-action_402 _ = happyFail--action_403 (153) = happyGoto action_518-action_403 _ = happyReduce_424--action_404 _ = happyReduce_63--action_405 (339) = happyShift action_517-action_405 (343) = happyShift action_244-action_405 (159) = happyGoto action_515-action_405 (236) = happyGoto action_516-action_405 _ = happyFail--action_406 (339) = happyShift action_514-action_406 _ = happyFail--action_407 _ = happyReduce_599--action_408 _ = happyReduce_598--action_409 (244) = happyShift action_36-action_409 (245) = happyShift action_37-action_409 (246) = happyShift action_38-action_409 (251) = happyShift action_39-action_409 (253) = happyShift action_40-action_409 (254) = happyShift action_41-action_409 (261) = happyShift action_45-action_409 (265) = happyShift action_46-action_409 (269) = happyShift action_47-action_409 (270) = happyShift action_48-action_409 (272) = happyShift action_49-action_409 (273) = happyShift action_50-action_409 (274) = happyShift action_51-action_409 (275) = happyShift action_52-action_409 (276) = happyShift action_53-action_409 (277) = happyShift action_54-action_409 (278) = happyShift action_55-action_409 (279) = happyShift action_56-action_409 (280) = happyShift action_57-action_409 (281) = happyShift action_58-action_409 (282) = happyShift action_59-action_409 (283) = happyShift action_60-action_409 (284) = happyShift action_61-action_409 (286) = happyShift action_62-action_409 (294) = happyShift action_66-action_409 (295) = happyShift action_67-action_409 (296) = happyShift action_68-action_409 (308) = happyShift action_212-action_409 (311) = happyShift action_69-action_409 (317) = happyShift action_70-action_409 (320) = happyShift action_71-action_409 (321) = happyShift action_214-action_409 (322) = happyShift action_215-action_409 (327) = happyShift action_216-action_409 (332) = happyShift action_72-action_409 (334) = happyShift action_73-action_409 (336) = happyShift action_107-action_409 (338) = happyShift action_75-action_409 (339) = happyShift action_512-action_409 (340) = happyShift action_76-action_409 (343) = happyShift action_513-action_409 (344) = happyShift action_380-action_409 (345) = happyShift action_77-action_409 (346) = happyShift action_78-action_409 (347) = happyShift action_79-action_409 (348) = happyShift action_221-action_409 (349) = happyShift action_222-action_409 (350) = happyShift action_80-action_409 (351) = happyShift action_81-action_409 (352) = happyShift action_223-action_409 (353) = happyShift action_224-action_409 (354) = happyShift action_82-action_409 (355) = happyShift action_83-action_409 (356) = happyShift action_84-action_409 (357) = happyShift action_85-action_409 (358) = happyShift action_86-action_409 (359) = happyShift action_87-action_409 (360) = happyShift action_88-action_409 (361) = happyShift action_89-action_409 (362) = happyShift action_90-action_409 (363) = happyShift action_91-action_409 (364) = happyShift action_92-action_409 (365) = happyShift action_93-action_409 (366) = happyShift action_94-action_409 (371) = happyShift action_95-action_409 (372) = happyShift action_96-action_409 (373) = happyShift action_97-action_409 (374) = happyShift action_98-action_409 (376) = happyShift action_99-action_409 (377) = happyShift action_100-action_409 (378) = happyShift action_101-action_409 (379) = happyShift action_102-action_409 (380) = happyShift action_103-action_409 (38) = happyGoto action_13-action_409 (142) = happyGoto action_16-action_409 (143) = happyGoto action_367-action_409 (144) = happyGoto action_368-action_409 (145) = happyGoto action_18-action_409 (147) = happyGoto action_19-action_409 (148) = happyGoto action_20-action_409 (149) = happyGoto action_21-action_409 (150) = happyGoto action_22-action_409 (151) = happyGoto action_23-action_409 (152) = happyGoto action_24-action_409 (157) = happyGoto action_510-action_409 (160) = happyGoto action_511-action_409 (192) = happyGoto action_25-action_409 (195) = happyGoto action_26-action_409 (198) = happyGoto action_27-action_409 (200) = happyGoto action_371-action_409 (212) = happyGoto action_372-action_409 (214) = happyGoto action_373-action_409 (219) = happyGoto action_29-action_409 (220) = happyGoto action_30-action_409 (221) = happyGoto action_106-action_409 (223) = happyGoto action_374-action_409 (224) = happyGoto action_407-action_409 (226) = happyGoto action_408-action_409 (227) = happyGoto action_32-action_409 (228) = happyGoto action_209-action_409 (229) = happyGoto action_33-action_409 (230) = happyGoto action_34-action_409 (231) = happyGoto action_210-action_409 (232) = happyGoto action_211-action_409 (233) = happyGoto action_35-action_409 _ = happyFail--action_410 (337) = happyShift action_509-action_410 _ = happyFail--action_411 (307) = happyShift action_506-action_411 (313) = happyShift action_507-action_411 (343) = happyShift action_508-action_411 _ = happyReduce_461--action_412 (343) = happyShift action_500-action_412 _ = happyReduce_462--action_413 (335) = happyShift action_505-action_413 _ = happyFail--action_414 (307) = happyShift action_502-action_414 (313) = happyShift action_503-action_414 (343) = happyShift action_504-action_414 _ = happyReduce_440--action_415 (333) = happyShift action_501-action_415 _ = happyFail--action_416 (343) = happyShift action_500-action_416 _ = happyReduce_441--action_417 (244) = happyShift action_36-action_417 (245) = happyShift action_37-action_417 (253) = happyShift action_40-action_417 (265) = happyShift action_46-action_417 (270) = happyShift action_48-action_417 (272) = happyShift action_49-action_417 (273) = happyShift action_50-action_417 (274) = happyShift action_51-action_417 (275) = happyShift action_52-action_417 (276) = happyShift action_53-action_417 (277) = happyShift action_54-action_417 (279) = happyShift action_56-action_417 (280) = happyShift action_57-action_417 (281) = happyShift action_58-action_417 (282) = happyShift action_59-action_417 (283) = happyShift action_60-action_417 (286) = happyShift action_62-action_417 (317) = happyShift action_70-action_417 (332) = happyShift action_72-action_417 (334) = happyShift action_73-action_417 (336) = happyShift action_107-action_417 (338) = happyShift action_75-action_417 (340) = happyShift action_76-action_417 (345) = happyShift action_77-action_417 (346) = happyShift action_78-action_417 (347) = happyShift action_79-action_417 (350) = happyShift action_80-action_417 (351) = happyShift action_81-action_417 (354) = happyShift action_82-action_417 (355) = happyShift action_83-action_417 (356) = happyShift action_84-action_417 (357) = happyShift action_85-action_417 (358) = happyShift action_86-action_417 (359) = happyShift action_87-action_417 (360) = happyShift action_88-action_417 (361) = happyShift action_89-action_417 (362) = happyShift action_90-action_417 (363) = happyShift action_91-action_417 (364) = happyShift action_92-action_417 (365) = happyShift action_93-action_417 (366) = happyShift action_94-action_417 (371) = happyShift action_95-action_417 (372) = happyShift action_96-action_417 (373) = happyShift action_97-action_417 (374) = happyShift action_98-action_417 (376) = happyShift action_99-action_417 (377) = happyShift action_100-action_417 (378) = happyShift action_101-action_417 (379) = happyShift action_102-action_417 (380) = happyShift action_103-action_417 (38) = happyGoto action_13-action_417 (142) = happyGoto action_16-action_417 (150) = happyGoto action_446-action_417 (151) = happyGoto action_23-action_417 (152) = happyGoto action_24-action_417 (192) = happyGoto action_25-action_417 (195) = happyGoto action_26-action_417 (198) = happyGoto action_27-action_417 (219) = happyGoto action_29-action_417 (220) = happyGoto action_30-action_417 (221) = happyGoto action_106-action_417 (227) = happyGoto action_32-action_417 (229) = happyGoto action_33-action_417 (230) = happyGoto action_34-action_417 (233) = happyGoto action_35-action_417 _ = happyReduce_378--action_418 _ = happyReduce_395--action_419 _ = happyReduce_485--action_420 (244) = happyShift action_36-action_420 (245) = happyShift action_37-action_420 (253) = happyShift action_40-action_420 (265) = happyShift action_46-action_420 (270) = happyShift action_48-action_420 (272) = happyShift action_49-action_420 (273) = happyShift action_50-action_420 (274) = happyShift action_51-action_420 (275) = happyShift action_52-action_420 (276) = happyShift action_53-action_420 (277) = happyShift action_54-action_420 (279) = happyShift action_56-action_420 (280) = happyShift action_57-action_420 (281) = happyShift action_58-action_420 (282) = happyShift action_59-action_420 (283) = happyShift action_60-action_420 (286) = happyShift action_62-action_420 (317) = happyShift action_70-action_420 (321) = happyShift action_422-action_420 (332) = happyShift action_72-action_420 (334) = happyShift action_73-action_420 (336) = happyShift action_107-action_420 (338) = happyShift action_75-action_420 (340) = happyShift action_76-action_420 (345) = happyShift action_77-action_420 (346) = happyShift action_78-action_420 (347) = happyShift action_79-action_420 (350) = happyShift action_80-action_420 (351) = happyShift action_81-action_420 (354) = happyShift action_82-action_420 (355) = happyShift action_83-action_420 (356) = happyShift action_84-action_420 (357) = happyShift action_85-action_420 (358) = happyShift action_86-action_420 (359) = happyShift action_87-action_420 (360) = happyShift action_88-action_420 (361) = happyShift action_89-action_420 (362) = happyShift action_90-action_420 (363) = happyShift action_91-action_420 (364) = happyShift action_92-action_420 (365) = happyShift action_93-action_420 (366) = happyShift action_94-action_420 (371) = happyShift action_95-action_420 (372) = happyShift action_96-action_420 (373) = happyShift action_97-action_420 (374) = happyShift action_98-action_420 (376) = happyShift action_99-action_420 (377) = happyShift action_100-action_420 (378) = happyShift action_101-action_420 (379) = happyShift action_102-action_420 (380) = happyShift action_103-action_420 (38) = happyGoto action_13-action_420 (142) = happyGoto action_16-action_420 (150) = happyGoto action_419-action_420 (151) = happyGoto action_23-action_420 (152) = happyGoto action_24-action_420 (179) = happyGoto action_498-action_420 (180) = happyGoto action_499-action_420 (192) = happyGoto action_25-action_420 (195) = happyGoto action_26-action_420 (198) = happyGoto action_27-action_420 (219) = happyGoto action_29-action_420 (220) = happyGoto action_30-action_420 (221) = happyGoto action_106-action_420 (227) = happyGoto action_32-action_420 (229) = happyGoto action_33-action_420 (230) = happyGoto action_34-action_420 (233) = happyGoto action_35-action_420 _ = happyReduce_488--action_421 (328) = happyShift action_496-action_421 (330) = happyShift action_497-action_421 (170) = happyGoto action_495-action_421 _ = happyFail--action_422 (244) = happyShift action_36-action_422 (245) = happyShift action_37-action_422 (253) = happyShift action_40-action_422 (265) = happyShift action_46-action_422 (270) = happyShift action_48-action_422 (272) = happyShift action_49-action_422 (273) = happyShift action_50-action_422 (274) = happyShift action_51-action_422 (275) = happyShift action_52-action_422 (276) = happyShift action_53-action_422 (277) = happyShift action_54-action_422 (279) = happyShift action_56-action_422 (280) = happyShift action_57-action_422 (281) = happyShift action_58-action_422 (282) = happyShift action_59-action_422 (283) = happyShift action_60-action_422 (286) = happyShift action_62-action_422 (317) = happyShift action_70-action_422 (332) = happyShift action_72-action_422 (334) = happyShift action_73-action_422 (336) = happyShift action_107-action_422 (338) = happyShift action_75-action_422 (340) = happyShift action_76-action_422 (345) = happyShift action_77-action_422 (346) = happyShift action_78-action_422 (347) = happyShift action_79-action_422 (350) = happyShift action_80-action_422 (351) = happyShift action_81-action_422 (354) = happyShift action_82-action_422 (355) = happyShift action_83-action_422 (356) = happyShift action_84-action_422 (357) = happyShift action_85-action_422 (358) = happyShift action_86-action_422 (359) = happyShift action_87-action_422 (360) = happyShift action_88-action_422 (361) = happyShift action_89-action_422 (362) = happyShift action_90-action_422 (363) = happyShift action_91-action_422 (364) = happyShift action_92-action_422 (365) = happyShift action_93-action_422 (366) = happyShift action_94-action_422 (371) = happyShift action_95-action_422 (372) = happyShift action_96-action_422 (373) = happyShift action_97-action_422 (374) = happyShift action_98-action_422 (376) = happyShift action_99-action_422 (377) = happyShift action_100-action_422 (378) = happyShift action_101-action_422 (379) = happyShift action_102-action_422 (380) = happyShift action_103-action_422 (38) = happyGoto action_13-action_422 (142) = happyGoto action_16-action_422 (150) = happyGoto action_494-action_422 (151) = happyGoto action_23-action_422 (152) = happyGoto action_24-action_422 (192) = happyGoto action_25-action_422 (195) = happyGoto action_26-action_422 (198) = happyGoto action_27-action_422 (219) = happyGoto action_29-action_422 (220) = happyGoto action_30-action_422 (221) = happyGoto action_106-action_422 (227) = happyGoto action_32-action_422 (229) = happyGoto action_33-action_422 (230) = happyGoto action_34-action_422 (233) = happyGoto action_35-action_422 _ = happyFail--action_423 (359) = happyShift action_493-action_423 _ = happyFail--action_424 (306) = happyShift action_492-action_424 _ = happyFail--action_425 (306) = happyShift action_491-action_425 _ = happyFail--action_426 (306) = happyShift action_490-action_426 _ = happyFail--action_427 (245) = happyShift action_37-action_427 (253) = happyShift action_40-action_427 (265) = happyShift action_46-action_427 (270) = happyShift action_48-action_427 (272) = happyShift action_49-action_427 (273) = happyShift action_50-action_427 (274) = happyShift action_51-action_427 (275) = happyShift action_52-action_427 (276) = happyShift action_53-action_427 (277) = happyShift action_54-action_427 (279) = happyShift action_56-action_427 (280) = happyShift action_57-action_427 (281) = happyShift action_58-action_427 (282) = happyShift action_59-action_427 (283) = happyShift action_60-action_427 (286) = happyShift action_62-action_427 (336) = happyShift action_316-action_427 (346) = happyShift action_78-action_427 (350) = happyShift action_80-action_427 (354) = happyShift action_82-action_427 (219) = happyGoto action_489-action_427 (220) = happyGoto action_30-action_427 (221) = happyGoto action_106-action_427 (227) = happyGoto action_32-action_427 _ = happyFail--action_428 _ = happyReduce_178--action_429 (317) = happyShift action_487-action_429 (359) = happyShift action_488-action_429 _ = happyFail--action_430 (245) = happyShift action_37-action_430 (253) = happyShift action_40-action_430 (265) = happyShift action_46-action_430 (270) = happyShift action_48-action_430 (272) = happyShift action_49-action_430 (273) = happyShift action_50-action_430 (274) = happyShift action_51-action_430 (275) = happyShift action_52-action_430 (276) = happyShift action_53-action_430 (277) = happyShift action_54-action_430 (279) = happyShift action_56-action_430 (280) = happyShift action_57-action_430 (281) = happyShift action_58-action_430 (282) = happyShift action_59-action_430 (283) = happyShift action_60-action_430 (286) = happyShift action_62-action_430 (336) = happyShift action_316-action_430 (346) = happyShift action_78-action_430 (350) = happyShift action_80-action_430 (354) = happyShift action_82-action_430 (219) = happyGoto action_486-action_430 (220) = happyGoto action_30-action_430 (221) = happyGoto action_106-action_430 (227) = happyGoto action_32-action_430 _ = happyFail--action_431 (245) = happyShift action_37-action_431 (253) = happyShift action_40-action_431 (265) = happyShift action_46-action_431 (270) = happyShift action_179-action_431 (272) = happyShift action_49-action_431 (273) = happyShift action_50-action_431 (274) = happyShift action_51-action_431 (275) = happyShift action_180-action_431 (276) = happyShift action_181-action_431 (277) = happyShift action_182-action_431 (280) = happyShift action_57-action_431 (281) = happyShift action_58-action_431 (282) = happyShift action_59-action_431 (283) = happyShift action_60-action_431 (286) = happyShift action_62-action_431 (299) = happyShift action_183-action_431 (300) = happyShift action_184-action_431 (321) = happyShift action_185-action_431 (328) = happyShift action_186-action_431 (332) = happyShift action_187-action_431 (334) = happyShift action_188-action_431 (336) = happyShift action_189-action_431 (338) = happyShift action_190-action_431 (345) = happyShift action_191-action_431 (346) = happyShift action_192-action_431 (347) = happyShift action_193-action_431 (351) = happyShift action_194-action_431 (355) = happyShift action_195-action_431 (356) = happyShift action_84-action_431 (358) = happyShift action_196-action_431 (359) = happyShift action_197-action_431 (376) = happyShift action_198-action_431 (377) = happyShift action_199-action_431 (379) = happyShift action_102-action_431 (380) = happyShift action_103-action_431 (95) = happyGoto action_349-action_431 (100) = happyGoto action_164-action_431 (101) = happyGoto action_350-action_431 (103) = happyGoto action_166-action_431 (104) = happyGoto action_167-action_431 (106) = happyGoto action_168-action_431 (107) = happyGoto action_169-action_431 (108) = happyGoto action_485-action_431 (142) = happyGoto action_170-action_431 (192) = happyGoto action_171-action_431 (202) = happyGoto action_172-action_431 (203) = happyGoto action_173-action_431 (205) = happyGoto action_174-action_431 (206) = happyGoto action_175-action_431 (215) = happyGoto action_176-action_431 (217) = happyGoto action_177-action_431 (227) = happyGoto action_178-action_431 _ = happyFail--action_432 (245) = happyShift action_37-action_432 (253) = happyShift action_40-action_432 (265) = happyShift action_46-action_432 (270) = happyShift action_48-action_432 (272) = happyShift action_49-action_432 (273) = happyShift action_50-action_432 (274) = happyShift action_51-action_432 (275) = happyShift action_52-action_432 (276) = happyShift action_53-action_432 (277) = happyShift action_54-action_432 (279) = happyShift action_56-action_432 (280) = happyShift action_57-action_432 (281) = happyShift action_58-action_432 (282) = happyShift action_59-action_432 (283) = happyShift action_60-action_432 (286) = happyShift action_62-action_432 (336) = happyShift action_316-action_432 (346) = happyShift action_78-action_432 (350) = happyShift action_80-action_432 (354) = happyShift action_82-action_432 (219) = happyGoto action_484-action_432 (220) = happyGoto action_30-action_432 (221) = happyGoto action_106-action_432 (227) = happyGoto action_32-action_432 _ = happyFail--action_433 (315) = happyShift action_483-action_433 _ = happyFail--action_434 _ = happyReduce_380--action_435 _ = happyReduce_388--action_436 (256) = happyShift action_482-action_436 _ = happyFail--action_437 (342) = happyShift action_481-action_437 (146) = happyGoto action_480-action_437 _ = happyReduce_387--action_438 (313) = happyShift action_440-action_438 (177) = happyGoto action_479-action_438 _ = happyReduce_376--action_439 _ = happyReduce_481--action_440 (244) = happyShift action_36-action_440 (245) = happyShift action_37-action_440 (246) = happyShift action_38-action_440 (251) = happyShift action_39-action_440 (253) = happyShift action_40-action_440 (254) = happyShift action_41-action_440 (261) = happyShift action_156-action_440 (265) = happyShift action_46-action_440 (269) = happyShift action_47-action_440 (270) = happyShift action_48-action_440 (272) = happyShift action_49-action_440 (273) = happyShift action_50-action_440 (274) = happyShift action_51-action_440 (275) = happyShift action_52-action_440 (276) = happyShift action_53-action_440 (277) = happyShift action_54-action_440 (278) = happyShift action_55-action_440 (279) = happyShift action_56-action_440 (280) = happyShift action_57-action_440 (281) = happyShift action_58-action_440 (282) = happyShift action_59-action_440 (283) = happyShift action_60-action_440 (284) = happyShift action_61-action_440 (286) = happyShift action_62-action_440 (294) = happyShift action_66-action_440 (295) = happyShift action_67-action_440 (296) = happyShift action_68-action_440 (311) = happyShift action_69-action_440 (317) = happyShift action_70-action_440 (320) = happyShift action_71-action_440 (321) = happyShift action_158-action_440 (332) = happyShift action_72-action_440 (334) = happyShift action_73-action_440 (336) = happyShift action_107-action_440 (338) = happyShift action_75-action_440 (340) = happyShift action_76-action_440 (345) = happyShift action_77-action_440 (346) = happyShift action_78-action_440 (347) = happyShift action_79-action_440 (350) = happyShift action_80-action_440 (351) = happyShift action_81-action_440 (354) = happyShift action_82-action_440 (355) = happyShift action_83-action_440 (356) = happyShift action_84-action_440 (357) = happyShift action_85-action_440 (358) = happyShift action_86-action_440 (359) = happyShift action_87-action_440 (360) = happyShift action_88-action_440 (361) = happyShift action_89-action_440 (362) = happyShift action_90-action_440 (363) = happyShift action_91-action_440 (364) = happyShift action_92-action_440 (365) = happyShift action_93-action_440 (366) = happyShift action_94-action_440 (371) = happyShift action_95-action_440 (372) = happyShift action_96-action_440 (373) = happyShift action_97-action_440 (374) = happyShift action_98-action_440 (376) = happyShift action_99-action_440 (377) = happyShift action_100-action_440 (378) = happyShift action_101-action_440 (379) = happyShift action_102-action_440 (380) = happyShift action_103-action_440 (38) = happyGoto action_13-action_440 (142) = happyGoto action_16-action_440 (143) = happyGoto action_152-action_440 (144) = happyGoto action_105-action_440 (145) = happyGoto action_18-action_440 (147) = happyGoto action_19-action_440 (148) = happyGoto action_20-action_440 (149) = happyGoto action_21-action_440 (150) = happyGoto action_22-action_440 (151) = happyGoto action_23-action_440 (152) = happyGoto action_24-action_440 (168) = happyGoto action_476-action_440 (169) = happyGoto action_477-action_440 (178) = happyGoto action_153-action_440 (186) = happyGoto action_478-action_440 (192) = happyGoto action_25-action_440 (195) = happyGoto action_26-action_440 (198) = happyGoto action_27-action_440 (219) = happyGoto action_29-action_440 (220) = happyGoto action_30-action_440 (221) = happyGoto action_106-action_440 (227) = happyGoto action_32-action_440 (229) = happyGoto action_33-action_440 (230) = happyGoto action_34-action_440 (233) = happyGoto action_35-action_440 _ = happyFail--action_441 _ = happyReduce_379--action_442 (264) = happyShift action_475-action_442 _ = happyFail--action_443 (244) = happyShift action_36-action_443 (245) = happyShift action_37-action_443 (253) = happyShift action_40-action_443 (265) = happyShift action_46-action_443 (270) = happyShift action_48-action_443 (272) = happyShift action_49-action_443 (273) = happyShift action_50-action_443 (274) = happyShift action_51-action_443 (275) = happyShift action_52-action_443 (276) = happyShift action_53-action_443 (277) = happyShift action_54-action_443 (279) = happyShift action_56-action_443 (280) = happyShift action_57-action_443 (281) = happyShift action_58-action_443 (282) = happyShift action_59-action_443 (283) = happyShift action_60-action_443 (286) = happyShift action_62-action_443 (317) = happyShift action_70-action_443 (332) = happyShift action_72-action_443 (334) = happyShift action_73-action_443 (336) = happyShift action_107-action_443 (338) = happyShift action_75-action_443 (340) = happyShift action_76-action_443 (345) = happyShift action_77-action_443 (346) = happyShift action_78-action_443 (347) = happyShift action_79-action_443 (350) = happyShift action_80-action_443 (351) = happyShift action_81-action_443 (354) = happyShift action_82-action_443 (355) = happyShift action_83-action_443 (356) = happyShift action_84-action_443 (357) = happyShift action_85-action_443 (358) = happyShift action_86-action_443 (359) = happyShift action_87-action_443 (360) = happyShift action_88-action_443 (361) = happyShift action_89-action_443 (362) = happyShift action_90-action_443 (363) = happyShift action_91-action_443 (364) = happyShift action_92-action_443 (365) = happyShift action_93-action_443 (366) = happyShift action_94-action_443 (371) = happyShift action_95-action_443 (372) = happyShift action_96-action_443 (373) = happyShift action_97-action_443 (374) = happyShift action_98-action_443 (376) = happyShift action_99-action_443 (377) = happyShift action_100-action_443 (378) = happyShift action_101-action_443 (379) = happyShift action_102-action_443 (380) = happyShift action_103-action_443 (38) = happyGoto action_13-action_443 (142) = happyGoto action_16-action_443 (150) = happyGoto action_474-action_443 (151) = happyGoto action_23-action_443 (152) = happyGoto action_24-action_443 (192) = happyGoto action_25-action_443 (195) = happyGoto action_26-action_443 (198) = happyGoto action_27-action_443 (219) = happyGoto action_29-action_443 (220) = happyGoto action_30-action_443 (221) = happyGoto action_106-action_443 (227) = happyGoto action_32-action_443 (229) = happyGoto action_33-action_443 (230) = happyGoto action_34-action_443 (233) = happyGoto action_35-action_443 _ = happyFail--action_444 (245) = happyShift action_37-action_444 (253) = happyShift action_40-action_444 (265) = happyShift action_46-action_444 (270) = happyShift action_48-action_444 (272) = happyShift action_49-action_444 (273) = happyShift action_50-action_444 (274) = happyShift action_51-action_444 (275) = happyShift action_52-action_444 (276) = happyShift action_53-action_444 (277) = happyShift action_54-action_444 (279) = happyShift action_56-action_444 (280) = happyShift action_57-action_444 (281) = happyShift action_58-action_444 (282) = happyShift action_59-action_444 (283) = happyShift action_60-action_444 (286) = happyShift action_62-action_444 (336) = happyShift action_473-action_444 (346) = happyShift action_78-action_444 (97) = happyGoto action_471-action_444 (218) = happyGoto action_472-action_444 (221) = happyGoto action_327-action_444 (227) = happyGoto action_32-action_444 _ = happyFail--action_445 (245) = happyShift action_37-action_445 (253) = happyShift action_40-action_445 (265) = happyShift action_46-action_445 (270) = happyShift action_48-action_445 (272) = happyShift action_49-action_445 (273) = happyShift action_50-action_445 (274) = happyShift action_51-action_445 (275) = happyShift action_52-action_445 (276) = happyShift action_53-action_445 (277) = happyShift action_54-action_445 (279) = happyShift action_56-action_445 (280) = happyShift action_57-action_445 (281) = happyShift action_58-action_445 (282) = happyShift action_59-action_445 (283) = happyShift action_60-action_445 (286) = happyShift action_62-action_445 (307) = happyShift action_470-action_445 (336) = happyShift action_316-action_445 (346) = happyShift action_78-action_445 (350) = happyShift action_80-action_445 (354) = happyShift action_82-action_445 (187) = happyGoto action_466-action_445 (188) = happyGoto action_467-action_445 (189) = happyGoto action_468-action_445 (219) = happyGoto action_469-action_445 (220) = happyGoto action_30-action_445 (221) = happyGoto action_106-action_445 (227) = happyGoto action_32-action_445 _ = happyReduce_504--action_446 _ = happyReduce_392--action_447 _ = happyReduce_382--action_448 _ = happyReduce_381--action_449 (245) = happyShift action_37-action_449 (253) = happyShift action_40-action_449 (265) = happyShift action_46-action_449 (270) = happyShift action_465-action_449 (272) = happyShift action_49-action_449 (273) = happyShift action_50-action_449 (274) = happyShift action_51-action_449 (275) = happyShift action_180-action_449 (276) = happyShift action_181-action_449 (277) = happyShift action_182-action_449 (280) = happyShift action_57-action_449 (281) = happyShift action_58-action_449 (282) = happyShift action_59-action_449 (283) = happyShift action_60-action_449 (286) = happyShift action_62-action_449 (299) = happyShift action_183-action_449 (300) = happyShift action_184-action_449 (321) = happyShift action_185-action_449 (328) = happyShift action_186-action_449 (332) = happyShift action_187-action_449 (334) = happyShift action_188-action_449 (336) = happyShift action_189-action_449 (338) = happyShift action_190-action_449 (345) = happyShift action_191-action_449 (346) = happyShift action_192-action_449 (347) = happyShift action_193-action_449 (351) = happyShift action_194-action_449 (355) = happyShift action_195-action_449 (356) = happyShift action_84-action_449 (358) = happyShift action_196-action_449 (359) = happyShift action_197-action_449 (376) = happyShift action_198-action_449 (377) = happyShift action_199-action_449 (379) = happyShift action_102-action_449 (380) = happyShift action_103-action_449 (96) = happyGoto action_459-action_449 (100) = happyGoto action_164-action_449 (102) = happyGoto action_460-action_449 (103) = happyGoto action_461-action_449 (105) = happyGoto action_462-action_449 (106) = happyGoto action_463-action_449 (107) = happyGoto action_169-action_449 (142) = happyGoto action_170-action_449 (192) = happyGoto action_464-action_449 (202) = happyGoto action_172-action_449 (203) = happyGoto action_173-action_449 (205) = happyGoto action_174-action_449 (206) = happyGoto action_175-action_449 (215) = happyGoto action_176-action_449 (217) = happyGoto action_177-action_449 (227) = happyGoto action_178-action_449 _ = happyFail--action_450 (308) = happyShift action_212-action_450 (320) = happyShift action_213-action_450 (321) = happyShift action_214-action_450 (322) = happyShift action_215-action_450 (327) = happyShift action_216-action_450 (344) = happyShift action_458-action_450 (348) = happyShift action_221-action_450 (349) = happyShift action_222-action_450 (50) = happyGoto action_452-action_450 (199) = happyGoto action_453-action_450 (209) = happyGoto action_454-action_450 (210) = happyGoto action_455-action_450 (225) = happyGoto action_456-action_450 (226) = happyGoto action_208-action_450 (228) = happyGoto action_209-action_450 (232) = happyGoto action_457-action_450 _ = happyFail--action_451 _ = happyReduce_85--action_452 (343) = happyShift action_839-action_452 _ = happyReduce_357--action_453 _ = happyReduce_562--action_454 _ = happyReduce_90--action_455 _ = happyReduce_561--action_456 _ = happyReduce_563--action_457 _ = happyReduce_532--action_458 (245) = happyShift action_37-action_458 (253) = happyShift action_40-action_458 (265) = happyShift action_46-action_458 (270) = happyShift action_48-action_458 (272) = happyShift action_49-action_458 (273) = happyShift action_50-action_458 (274) = happyShift action_51-action_458 (275) = happyShift action_52-action_458 (276) = happyShift action_53-action_458 (277) = happyShift action_54-action_458 (279) = happyShift action_56-action_458 (280) = happyShift action_57-action_458 (281) = happyShift action_58-action_458 (282) = happyShift action_59-action_458 (283) = happyShift action_60-action_458 (286) = happyShift action_62-action_458 (346) = happyShift action_78-action_458 (347) = happyShift action_79-action_458 (221) = happyGoto action_696-action_458 (227) = happyGoto action_32-action_458 (230) = happyGoto action_838-action_458 _ = happyFail--action_459 _ = happyReduce_355--action_460 _ = happyReduce_221--action_461 (319) = happyShift action_837-action_461 _ = happyFail--action_462 _ = happyReduce_238--action_463 (245) = happyShift action_37-action_463 (253) = happyShift action_40-action_463 (265) = happyShift action_46-action_463 (272) = happyShift action_49-action_463 (273) = happyShift action_50-action_463 (274) = happyShift action_51-action_463 (275) = happyShift action_180-action_463 (276) = happyShift action_181-action_463 (277) = happyShift action_182-action_463 (280) = happyShift action_57-action_463 (281) = happyShift action_58-action_463 (282) = happyShift action_59-action_463 (283) = happyShift action_60-action_463 (286) = happyShift action_62-action_463 (299) = happyShift action_183-action_463 (300) = happyShift action_184-action_463 (315) = happyShift action_834-action_463 (317) = happyShift action_835-action_463 (319) = happyReduce_240-action_463 (321) = happyShift action_185-action_463 (322) = happyShift action_267-action_463 (327) = happyShift action_295-action_463 (328) = happyShift action_186-action_463 (332) = happyShift action_187-action_463 (334) = happyShift action_188-action_463 (336) = happyShift action_189-action_463 (338) = happyShift action_190-action_463 (344) = happyShift action_296-action_463 (345) = happyShift action_836-action_463 (346) = happyShift action_192-action_463 (347) = happyShift action_193-action_463 (348) = happyShift action_269-action_463 (349) = happyShift action_270-action_463 (351) = happyShift action_194-action_463 (352) = happyShift action_271-action_463 (353) = happyShift action_272-action_463 (355) = happyShift action_195-action_463 (358) = happyShift action_196-action_463 (359) = happyShift action_197-action_463 (368) = happyShift action_147-action_463 (376) = happyShift action_198-action_463 (377) = happyShift action_199-action_463 (379) = happyShift action_102-action_463 (380) = happyShift action_103-action_463 (100) = happyGoto action_164-action_463 (107) = happyGoto action_289-action_463 (142) = happyGoto action_170-action_463 (202) = happyGoto action_172-action_463 (203) = happyGoto action_173-action_463 (204) = happyGoto action_832-action_463 (205) = happyGoto action_174-action_463 (206) = happyGoto action_175-action_463 (207) = happyGoto action_291-action_463 (208) = happyGoto action_262-action_463 (215) = happyGoto action_176-action_463 (216) = happyGoto action_833-action_463 (217) = happyGoto action_177-action_463 (227) = happyGoto action_178-action_463 (238) = happyGoto action_767-action_463 _ = happyReduce_248--action_464 (309) = happyShift action_831-action_464 _ = happyFail--action_465 (245) = happyShift action_37-action_465 (253) = happyShift action_40-action_465 (265) = happyShift action_46-action_465 (272) = happyShift action_49-action_465 (273) = happyShift action_50-action_465 (274) = happyShift action_51-action_465 (275) = happyShift action_180-action_465 (276) = happyShift action_181-action_465 (277) = happyShift action_182-action_465 (280) = happyShift action_57-action_465 (281) = happyShift action_58-action_465 (282) = happyShift action_59-action_465 (283) = happyShift action_60-action_465 (286) = happyShift action_62-action_465 (336) = happyShift action_287-action_465 (346) = happyShift action_192-action_465 (112) = happyGoto action_830-action_465 (113) = happyGoto action_285-action_465 (215) = happyGoto action_286-action_465 (217) = happyGoto action_177-action_465 (227) = happyGoto action_178-action_465 _ = happyReduce_291--action_466 (329) = happyShift action_829-action_466 _ = happyFail--action_467 _ = happyReduce_503--action_468 (343) = happyShift action_828-action_468 _ = happyReduce_506--action_469 (310) = happyShift action_827-action_469 _ = happyReduce_509--action_470 _ = happyReduce_507--action_471 (309) = happyShift action_826-action_471 (343) = happyShift action_691-action_471 _ = happyFail--action_472 _ = happyReduce_223--action_473 (320) = happyShift action_213-action_473 (321) = happyShift action_214-action_473 (322) = happyShift action_215-action_473 (327) = happyShift action_216-action_473 (348) = happyShift action_221-action_473 (225) = happyGoto action_591-action_473 (226) = happyGoto action_208-action_473 (228) = happyGoto action_209-action_473 _ = happyFail--action_474 _ = happyReduce_394--action_475 (328) = happyShift action_496-action_475 (330) = happyShift action_497-action_475 (170) = happyGoto action_825-action_475 _ = happyFail--action_476 (315) = happyShift action_824-action_476 _ = happyFail--action_477 (343) = happyShift action_823-action_477 _ = happyReduce_466--action_478 _ = happyReduce_468--action_479 _ = happyReduce_480--action_480 (266) = happyShift action_822-action_480 _ = happyFail--action_481 _ = happyReduce_386--action_482 (244) = happyShift action_36-action_482 (245) = happyShift action_37-action_482 (246) = happyShift action_38-action_482 (251) = happyShift action_39-action_482 (253) = happyShift action_40-action_482 (254) = happyShift action_41-action_482 (261) = happyShift action_45-action_482 (265) = happyShift action_46-action_482 (269) = happyShift action_47-action_482 (270) = happyShift action_48-action_482 (272) = happyShift action_49-action_482 (273) = happyShift action_50-action_482 (274) = happyShift action_51-action_482 (275) = happyShift action_52-action_482 (276) = happyShift action_53-action_482 (277) = happyShift action_54-action_482 (278) = happyShift action_55-action_482 (279) = happyShift action_56-action_482 (280) = happyShift action_57-action_482 (281) = happyShift action_58-action_482 (282) = happyShift action_59-action_482 (283) = happyShift action_60-action_482 (284) = happyShift action_61-action_482 (286) = happyShift action_62-action_482 (294) = happyShift action_66-action_482 (295) = happyShift action_67-action_482 (296) = happyShift action_68-action_482 (311) = happyShift action_69-action_482 (317) = happyShift action_70-action_482 (320) = happyShift action_71-action_482 (332) = happyShift action_72-action_482 (334) = happyShift action_73-action_482 (336) = happyShift action_107-action_482 (338) = happyShift action_75-action_482 (340) = happyShift action_76-action_482 (345) = happyShift action_77-action_482 (346) = happyShift action_78-action_482 (347) = happyShift action_79-action_482 (350) = happyShift action_80-action_482 (351) = happyShift action_81-action_482 (354) = happyShift action_82-action_482 (355) = happyShift action_83-action_482 (356) = happyShift action_84-action_482 (357) = happyShift action_85-action_482 (358) = happyShift action_86-action_482 (359) = happyShift action_87-action_482 (360) = happyShift action_88-action_482 (361) = happyShift action_89-action_482 (362) = happyShift action_90-action_482 (363) = happyShift action_91-action_482 (364) = happyShift action_92-action_482 (365) = happyShift action_93-action_482 (366) = happyShift action_94-action_482 (371) = happyShift action_95-action_482 (372) = happyShift action_96-action_482 (373) = happyShift action_97-action_482 (374) = happyShift action_98-action_482 (376) = happyShift action_99-action_482 (377) = happyShift action_100-action_482 (378) = happyShift action_101-action_482 (379) = happyShift action_102-action_482 (380) = happyShift action_103-action_482 (38) = happyGoto action_13-action_482 (142) = happyGoto action_16-action_482 (143) = happyGoto action_821-action_482 (144) = happyGoto action_105-action_482 (145) = happyGoto action_18-action_482 (147) = happyGoto action_19-action_482 (148) = happyGoto action_20-action_482 (149) = happyGoto action_21-action_482 (150) = happyGoto action_22-action_482 (151) = happyGoto action_23-action_482 (152) = happyGoto action_24-action_482 (192) = happyGoto action_25-action_482 (195) = happyGoto action_26-action_482 (198) = happyGoto action_27-action_482 (219) = happyGoto action_29-action_482 (220) = happyGoto action_30-action_482 (221) = happyGoto action_106-action_482 (227) = happyGoto action_32-action_482 (229) = happyGoto action_33-action_482 (230) = happyGoto action_34-action_482 (233) = happyGoto action_35-action_482 _ = happyFail--action_483 (244) = happyShift action_36-action_483 (245) = happyShift action_37-action_483 (246) = happyShift action_38-action_483 (251) = happyShift action_39-action_483 (253) = happyShift action_40-action_483 (254) = happyShift action_41-action_483 (261) = happyShift action_45-action_483 (265) = happyShift action_46-action_483 (269) = happyShift action_47-action_483 (270) = happyShift action_48-action_483 (272) = happyShift action_49-action_483 (273) = happyShift action_50-action_483 (274) = happyShift action_51-action_483 (275) = happyShift action_52-action_483 (276) = happyShift action_53-action_483 (277) = happyShift action_54-action_483 (278) = happyShift action_55-action_483 (279) = happyShift action_56-action_483 (280) = happyShift action_57-action_483 (281) = happyShift action_58-action_483 (282) = happyShift action_59-action_483 (283) = happyShift action_60-action_483 (284) = happyShift action_61-action_483 (286) = happyShift action_62-action_483 (294) = happyShift action_66-action_483 (295) = happyShift action_67-action_483 (296) = happyShift action_68-action_483 (311) = happyShift action_69-action_483 (317) = happyShift action_70-action_483 (320) = happyShift action_71-action_483 (332) = happyShift action_72-action_483 (334) = happyShift action_73-action_483 (336) = happyShift action_107-action_483 (338) = happyShift action_75-action_483 (340) = happyShift action_76-action_483 (345) = happyShift action_77-action_483 (346) = happyShift action_78-action_483 (347) = happyShift action_79-action_483 (350) = happyShift action_80-action_483 (351) = happyShift action_81-action_483 (354) = happyShift action_82-action_483 (355) = happyShift action_83-action_483 (356) = happyShift action_84-action_483 (357) = happyShift action_85-action_483 (358) = happyShift action_86-action_483 (359) = happyShift action_87-action_483 (360) = happyShift action_88-action_483 (361) = happyShift action_89-action_483 (362) = happyShift action_90-action_483 (363) = happyShift action_91-action_483 (364) = happyShift action_92-action_483 (365) = happyShift action_93-action_483 (366) = happyShift action_94-action_483 (371) = happyShift action_95-action_483 (372) = happyShift action_96-action_483 (373) = happyShift action_97-action_483 (374) = happyShift action_98-action_483 (376) = happyShift action_99-action_483 (377) = happyShift action_100-action_483 (378) = happyShift action_101-action_483 (379) = happyShift action_102-action_483 (380) = happyShift action_103-action_483 (38) = happyGoto action_13-action_483 (142) = happyGoto action_16-action_483 (143) = happyGoto action_820-action_483 (144) = happyGoto action_105-action_483 (145) = happyGoto action_18-action_483 (147) = happyGoto action_19-action_483 (148) = happyGoto action_20-action_483 (149) = happyGoto action_21-action_483 (150) = happyGoto action_22-action_483 (151) = happyGoto action_23-action_483 (152) = happyGoto action_24-action_483 (192) = happyGoto action_25-action_483 (195) = happyGoto action_26-action_483 (198) = happyGoto action_27-action_483 (219) = happyGoto action_29-action_483 (220) = happyGoto action_30-action_483 (221) = happyGoto action_106-action_483 (227) = happyGoto action_32-action_483 (229) = happyGoto action_33-action_483 (230) = happyGoto action_34-action_483 (233) = happyGoto action_35-action_483 _ = happyFail--action_484 (306) = happyShift action_819-action_484 _ = happyFail--action_485 (306) = happyShift action_818-action_485 _ = happyFail--action_486 (309) = happyShift action_817-action_486 _ = happyFail--action_487 (359) = happyShift action_816-action_487 _ = happyFail--action_488 (333) = happyShift action_815-action_488 _ = happyFail--action_489 (309) = happyShift action_814-action_489 _ = happyFail--action_490 (244) = happyShift action_36-action_490 (245) = happyShift action_37-action_490 (246) = happyShift action_38-action_490 (251) = happyShift action_39-action_490 (253) = happyShift action_40-action_490 (254) = happyShift action_41-action_490 (261) = happyShift action_45-action_490 (265) = happyShift action_46-action_490 (269) = happyShift action_47-action_490 (270) = happyShift action_48-action_490 (272) = happyShift action_49-action_490 (273) = happyShift action_50-action_490 (274) = happyShift action_51-action_490 (275) = happyShift action_52-action_490 (276) = happyShift action_53-action_490 (277) = happyShift action_54-action_490 (278) = happyShift action_55-action_490 (279) = happyShift action_56-action_490 (280) = happyShift action_57-action_490 (281) = happyShift action_58-action_490 (282) = happyShift action_59-action_490 (283) = happyShift action_60-action_490 (284) = happyShift action_61-action_490 (286) = happyShift action_62-action_490 (294) = happyShift action_66-action_490 (295) = happyShift action_67-action_490 (296) = happyShift action_68-action_490 (311) = happyShift action_69-action_490 (317) = happyShift action_70-action_490 (320) = happyShift action_71-action_490 (332) = happyShift action_72-action_490 (334) = happyShift action_73-action_490 (336) = happyShift action_107-action_490 (338) = happyShift action_75-action_490 (340) = happyShift action_76-action_490 (345) = happyShift action_77-action_490 (346) = happyShift action_78-action_490 (347) = happyShift action_79-action_490 (350) = happyShift action_80-action_490 (351) = happyShift action_81-action_490 (354) = happyShift action_82-action_490 (355) = happyShift action_83-action_490 (356) = happyShift action_84-action_490 (357) = happyShift action_85-action_490 (358) = happyShift action_86-action_490 (359) = happyShift action_87-action_490 (360) = happyShift action_88-action_490 (361) = happyShift action_89-action_490 (362) = happyShift action_90-action_490 (363) = happyShift action_91-action_490 (364) = happyShift action_92-action_490 (365) = happyShift action_93-action_490 (366) = happyShift action_94-action_490 (371) = happyShift action_95-action_490 (372) = happyShift action_96-action_490 (373) = happyShift action_97-action_490 (374) = happyShift action_98-action_490 (376) = happyShift action_99-action_490 (377) = happyShift action_100-action_490 (378) = happyShift action_101-action_490 (379) = happyShift action_102-action_490 (380) = happyShift action_103-action_490 (38) = happyGoto action_13-action_490 (142) = happyGoto action_16-action_490 (143) = happyGoto action_813-action_490 (144) = happyGoto action_105-action_490 (145) = happyGoto action_18-action_490 (147) = happyGoto action_19-action_490 (148) = happyGoto action_20-action_490 (149) = happyGoto action_21-action_490 (150) = happyGoto action_22-action_490 (151) = happyGoto action_23-action_490 (152) = happyGoto action_24-action_490 (192) = happyGoto action_25-action_490 (195) = happyGoto action_26-action_490 (198) = happyGoto action_27-action_490 (219) = happyGoto action_29-action_490 (220) = happyGoto action_30-action_490 (221) = happyGoto action_106-action_490 (227) = happyGoto action_32-action_490 (229) = happyGoto action_33-action_490 (230) = happyGoto action_34-action_490 (233) = happyGoto action_35-action_490 _ = happyFail--action_491 _ = happyReduce_389--action_492 _ = happyReduce_390--action_493 (308) = happyShift action_812-action_493 _ = happyFail--action_494 _ = happyReduce_486--action_495 _ = happyReduce_374--action_496 (244) = happyShift action_36-action_496 (245) = happyShift action_37-action_496 (246) = happyShift action_38-action_496 (251) = happyShift action_39-action_496 (253) = happyShift action_40-action_496 (254) = happyShift action_41-action_496 (261) = happyShift action_45-action_496 (265) = happyShift action_46-action_496 (269) = happyShift action_47-action_496 (270) = happyShift action_48-action_496 (272) = happyShift action_49-action_496 (273) = happyShift action_50-action_496 (274) = happyShift action_51-action_496 (275) = happyShift action_52-action_496 (276) = happyShift action_53-action_496 (277) = happyShift action_54-action_496 (278) = happyShift action_55-action_496 (279) = happyShift action_56-action_496 (280) = happyShift action_57-action_496 (281) = happyShift action_58-action_496 (282) = happyShift action_59-action_496 (283) = happyShift action_60-action_496 (284) = happyShift action_61-action_496 (286) = happyShift action_62-action_496 (294) = happyShift action_66-action_496 (295) = happyShift action_67-action_496 (296) = happyShift action_68-action_496 (311) = happyShift action_69-action_496 (317) = happyShift action_70-action_496 (320) = happyShift action_71-action_496 (321) = happyShift action_158-action_496 (332) = happyShift action_72-action_496 (334) = happyShift action_73-action_496 (336) = happyShift action_107-action_496 (338) = happyShift action_75-action_496 (340) = happyShift action_76-action_496 (342) = happyShift action_810-action_496 (345) = happyShift action_77-action_496 (346) = happyShift action_78-action_496 (347) = happyShift action_79-action_496 (350) = happyShift action_80-action_496 (351) = happyShift action_81-action_496 (354) = happyShift action_82-action_496 (355) = happyShift action_83-action_496 (356) = happyShift action_84-action_496 (357) = happyShift action_85-action_496 (358) = happyShift action_86-action_496 (359) = happyShift action_87-action_496 (360) = happyShift action_88-action_496 (361) = happyShift action_89-action_496 (362) = happyShift action_90-action_496 (363) = happyShift action_91-action_496 (364) = happyShift action_92-action_496 (365) = happyShift action_93-action_496 (366) = happyShift action_94-action_496 (371) = happyShift action_95-action_496 (372) = happyShift action_96-action_496 (373) = happyShift action_97-action_496 (374) = happyShift action_98-action_496 (376) = happyShift action_99-action_496 (377) = happyShift action_100-action_496 (378) = happyShift action_101-action_496 (379) = happyShift action_102-action_496 (380) = happyShift action_103-action_496 (38) = happyGoto action_13-action_496 (142) = happyGoto action_16-action_496 (143) = happyGoto action_805-action_496 (144) = happyGoto action_105-action_496 (145) = happyGoto action_18-action_496 (147) = happyGoto action_19-action_496 (148) = happyGoto action_20-action_496 (149) = happyGoto action_21-action_496 (150) = happyGoto action_22-action_496 (151) = happyGoto action_23-action_496 (152) = happyGoto action_24-action_496 (171) = happyGoto action_811-action_496 (172) = happyGoto action_807-action_496 (173) = happyGoto action_808-action_496 (178) = happyGoto action_809-action_496 (192) = happyGoto action_25-action_496 (195) = happyGoto action_26-action_496 (198) = happyGoto action_27-action_496 (219) = happyGoto action_29-action_496 (220) = happyGoto action_30-action_496 (221) = happyGoto action_106-action_496 (227) = happyGoto action_32-action_496 (229) = happyGoto action_33-action_496 (230) = happyGoto action_34-action_496 (233) = happyGoto action_35-action_496 _ = happyFail--action_497 (244) = happyShift action_36-action_497 (245) = happyShift action_37-action_497 (246) = happyShift action_38-action_497 (251) = happyShift action_39-action_497 (253) = happyShift action_40-action_497 (254) = happyShift action_41-action_497 (261) = happyShift action_45-action_497 (265) = happyShift action_46-action_497 (269) = happyShift action_47-action_497 (270) = happyShift action_48-action_497 (272) = happyShift action_49-action_497 (273) = happyShift action_50-action_497 (274) = happyShift action_51-action_497 (275) = happyShift action_52-action_497 (276) = happyShift action_53-action_497 (277) = happyShift action_54-action_497 (278) = happyShift action_55-action_497 (279) = happyShift action_56-action_497 (280) = happyShift action_57-action_497 (281) = happyShift action_58-action_497 (282) = happyShift action_59-action_497 (283) = happyShift action_60-action_497 (284) = happyShift action_61-action_497 (286) = happyShift action_62-action_497 (294) = happyShift action_66-action_497 (295) = happyShift action_67-action_497 (296) = happyShift action_68-action_497 (311) = happyShift action_69-action_497 (317) = happyShift action_70-action_497 (320) = happyShift action_71-action_497 (321) = happyShift action_158-action_497 (332) = happyShift action_72-action_497 (334) = happyShift action_73-action_497 (336) = happyShift action_107-action_497 (338) = happyShift action_75-action_497 (340) = happyShift action_76-action_497 (342) = happyShift action_810-action_497 (345) = happyShift action_77-action_497 (346) = happyShift action_78-action_497 (347) = happyShift action_79-action_497 (350) = happyShift action_80-action_497 (351) = happyShift action_81-action_497 (354) = happyShift action_82-action_497 (355) = happyShift action_83-action_497 (356) = happyShift action_84-action_497 (357) = happyShift action_85-action_497 (358) = happyShift action_86-action_497 (359) = happyShift action_87-action_497 (360) = happyShift action_88-action_497 (361) = happyShift action_89-action_497 (362) = happyShift action_90-action_497 (363) = happyShift action_91-action_497 (364) = happyShift action_92-action_497 (365) = happyShift action_93-action_497 (366) = happyShift action_94-action_497 (371) = happyShift action_95-action_497 (372) = happyShift action_96-action_497 (373) = happyShift action_97-action_497 (374) = happyShift action_98-action_497 (376) = happyShift action_99-action_497 (377) = happyShift action_100-action_497 (378) = happyShift action_101-action_497 (379) = happyShift action_102-action_497 (380) = happyShift action_103-action_497 (38) = happyGoto action_13-action_497 (142) = happyGoto action_16-action_497 (143) = happyGoto action_805-action_497 (144) = happyGoto action_105-action_497 (145) = happyGoto action_18-action_497 (147) = happyGoto action_19-action_497 (148) = happyGoto action_20-action_497 (149) = happyGoto action_21-action_497 (150) = happyGoto action_22-action_497 (151) = happyGoto action_23-action_497 (152) = happyGoto action_24-action_497 (171) = happyGoto action_806-action_497 (172) = happyGoto action_807-action_497 (173) = happyGoto action_808-action_497 (178) = happyGoto action_809-action_497 (192) = happyGoto action_25-action_497 (195) = happyGoto action_26-action_497 (198) = happyGoto action_27-action_497 (219) = happyGoto action_29-action_497 (220) = happyGoto action_30-action_497 (221) = happyGoto action_106-action_497 (227) = happyGoto action_32-action_497 (229) = happyGoto action_33-action_497 (230) = happyGoto action_34-action_497 (233) = happyGoto action_35-action_497 _ = happyFail--action_498 (244) = happyShift action_36-action_498 (245) = happyShift action_37-action_498 (253) = happyShift action_40-action_498 (265) = happyShift action_46-action_498 (270) = happyShift action_48-action_498 (272) = happyShift action_49-action_498 (273) = happyShift action_50-action_498 (274) = happyShift action_51-action_498 (275) = happyShift action_52-action_498 (276) = happyShift action_53-action_498 (277) = happyShift action_54-action_498 (279) = happyShift action_56-action_498 (280) = happyShift action_57-action_498 (281) = happyShift action_58-action_498 (282) = happyShift action_59-action_498 (283) = happyShift action_60-action_498 (286) = happyShift action_62-action_498 (317) = happyShift action_70-action_498 (321) = happyShift action_422-action_498 (332) = happyShift action_72-action_498 (334) = happyShift action_73-action_498 (336) = happyShift action_107-action_498 (338) = happyShift action_75-action_498 (340) = happyShift action_76-action_498 (345) = happyShift action_77-action_498 (346) = happyShift action_78-action_498 (347) = happyShift action_79-action_498 (350) = happyShift action_80-action_498 (351) = happyShift action_81-action_498 (354) = happyShift action_82-action_498 (355) = happyShift action_83-action_498 (356) = happyShift action_84-action_498 (357) = happyShift action_85-action_498 (358) = happyShift action_86-action_498 (359) = happyShift action_87-action_498 (360) = happyShift action_88-action_498 (361) = happyShift action_89-action_498 (362) = happyShift action_90-action_498 (363) = happyShift action_91-action_498 (364) = happyShift action_92-action_498 (365) = happyShift action_93-action_498 (366) = happyShift action_94-action_498 (371) = happyShift action_95-action_498 (372) = happyShift action_96-action_498 (373) = happyShift action_97-action_498 (374) = happyShift action_98-action_498 (376) = happyShift action_99-action_498 (377) = happyShift action_100-action_498 (378) = happyShift action_101-action_498 (379) = happyShift action_102-action_498 (380) = happyShift action_103-action_498 (38) = happyGoto action_13-action_498 (142) = happyGoto action_16-action_498 (150) = happyGoto action_419-action_498 (151) = happyGoto action_23-action_498 (152) = happyGoto action_24-action_498 (179) = happyGoto action_498-action_498 (180) = happyGoto action_804-action_498 (192) = happyGoto action_25-action_498 (195) = happyGoto action_26-action_498 (198) = happyGoto action_27-action_498 (219) = happyGoto action_29-action_498 (220) = happyGoto action_30-action_498 (221) = happyGoto action_106-action_498 (227) = happyGoto action_32-action_498 (229) = happyGoto action_33-action_498 (230) = happyGoto action_34-action_498 (233) = happyGoto action_35-action_498 _ = happyReduce_488--action_499 (309) = happyShift action_803-action_499 (94) = happyGoto action_802-action_499 _ = happyReduce_218--action_500 (244) = happyShift action_36-action_500 (245) = happyShift action_37-action_500 (246) = happyShift action_38-action_500 (251) = happyShift action_39-action_500 (253) = happyShift action_40-action_500 (254) = happyShift action_41-action_500 (261) = happyShift action_45-action_500 (265) = happyShift action_46-action_500 (269) = happyShift action_47-action_500 (270) = happyShift action_48-action_500 (272) = happyShift action_49-action_500 (273) = happyShift action_50-action_500 (274) = happyShift action_51-action_500 (275) = happyShift action_52-action_500 (276) = happyShift action_53-action_500 (277) = happyShift action_54-action_500 (278) = happyShift action_55-action_500 (279) = happyShift action_56-action_500 (280) = happyShift action_57-action_500 (281) = happyShift action_58-action_500 (282) = happyShift action_59-action_500 (283) = happyShift action_60-action_500 (284) = happyShift action_61-action_500 (286) = happyShift action_62-action_500 (294) = happyShift action_66-action_500 (295) = happyShift action_67-action_500 (296) = happyShift action_68-action_500 (308) = happyShift action_212-action_500 (311) = happyShift action_69-action_500 (317) = happyShift action_70-action_500 (320) = happyShift action_71-action_500 (321) = happyShift action_214-action_500 (322) = happyShift action_215-action_500 (327) = happyShift action_216-action_500 (332) = happyShift action_72-action_500 (334) = happyShift action_73-action_500 (336) = happyShift action_107-action_500 (338) = happyShift action_75-action_500 (340) = happyShift action_76-action_500 (344) = happyShift action_380-action_500 (345) = happyShift action_77-action_500 (346) = happyShift action_78-action_500 (347) = happyShift action_79-action_500 (348) = happyShift action_221-action_500 (349) = happyShift action_222-action_500 (350) = happyShift action_80-action_500 (351) = happyShift action_81-action_500 (352) = happyShift action_223-action_500 (353) = happyShift action_224-action_500 (354) = happyShift action_82-action_500 (355) = happyShift action_83-action_500 (356) = happyShift action_84-action_500 (357) = happyShift action_85-action_500 (358) = happyShift action_86-action_500 (359) = happyShift action_87-action_500 (360) = happyShift action_88-action_500 (361) = happyShift action_89-action_500 (362) = happyShift action_90-action_500 (363) = happyShift action_91-action_500 (364) = happyShift action_92-action_500 (365) = happyShift action_93-action_500 (366) = happyShift action_94-action_500 (371) = happyShift action_95-action_500 (372) = happyShift action_96-action_500 (373) = happyShift action_97-action_500 (374) = happyShift action_98-action_500 (376) = happyShift action_99-action_500 (377) = happyShift action_100-action_500 (378) = happyShift action_101-action_500 (379) = happyShift action_102-action_500 (380) = happyShift action_103-action_500 (38) = happyGoto action_13-action_500 (142) = happyGoto action_16-action_500 (143) = happyGoto action_367-action_500 (144) = happyGoto action_368-action_500 (145) = happyGoto action_18-action_500 (147) = happyGoto action_19-action_500 (148) = happyGoto action_20-action_500 (149) = happyGoto action_21-action_500 (150) = happyGoto action_22-action_500 (151) = happyGoto action_23-action_500 (152) = happyGoto action_24-action_500 (157) = happyGoto action_801-action_500 (192) = happyGoto action_25-action_500 (195) = happyGoto action_26-action_500 (198) = happyGoto action_27-action_500 (200) = happyGoto action_371-action_500 (212) = happyGoto action_372-action_500 (214) = happyGoto action_373-action_500 (219) = happyGoto action_29-action_500 (220) = happyGoto action_30-action_500 (221) = happyGoto action_106-action_500 (223) = happyGoto action_374-action_500 (224) = happyGoto action_407-action_500 (226) = happyGoto action_408-action_500 (227) = happyGoto action_32-action_500 (228) = happyGoto action_209-action_500 (229) = happyGoto action_33-action_500 (230) = happyGoto action_34-action_500 (231) = happyGoto action_210-action_500 (232) = happyGoto action_211-action_500 (233) = happyGoto action_35-action_500 _ = happyFail--action_501 _ = happyReduce_408--action_502 (244) = happyShift action_36-action_502 (245) = happyShift action_37-action_502 (246) = happyShift action_38-action_502 (251) = happyShift action_39-action_502 (253) = happyShift action_40-action_502 (254) = happyShift action_41-action_502 (261) = happyShift action_45-action_502 (265) = happyShift action_46-action_502 (269) = happyShift action_47-action_502 (270) = happyShift action_48-action_502 (272) = happyShift action_49-action_502 (273) = happyShift action_50-action_502 (274) = happyShift action_51-action_502 (275) = happyShift action_52-action_502 (276) = happyShift action_53-action_502 (277) = happyShift action_54-action_502 (278) = happyShift action_55-action_502 (279) = happyShift action_56-action_502 (280) = happyShift action_57-action_502 (281) = happyShift action_58-action_502 (282) = happyShift action_59-action_502 (283) = happyShift action_60-action_502 (284) = happyShift action_61-action_502 (286) = happyShift action_62-action_502 (294) = happyShift action_66-action_502 (295) = happyShift action_67-action_502 (296) = happyShift action_68-action_502 (311) = happyShift action_69-action_502 (317) = happyShift action_70-action_502 (320) = happyShift action_71-action_502 (332) = happyShift action_72-action_502 (334) = happyShift action_73-action_502 (336) = happyShift action_107-action_502 (338) = happyShift action_75-action_502 (340) = happyShift action_76-action_502 (345) = happyShift action_77-action_502 (346) = happyShift action_78-action_502 (347) = happyShift action_79-action_502 (350) = happyShift action_80-action_502 (351) = happyShift action_81-action_502 (354) = happyShift action_82-action_502 (355) = happyShift action_83-action_502 (356) = happyShift action_84-action_502 (357) = happyShift action_85-action_502 (358) = happyShift action_86-action_502 (359) = happyShift action_87-action_502 (360) = happyShift action_88-action_502 (361) = happyShift action_89-action_502 (362) = happyShift action_90-action_502 (363) = happyShift action_91-action_502 (364) = happyShift action_92-action_502 (365) = happyShift action_93-action_502 (366) = happyShift action_94-action_502 (371) = happyShift action_95-action_502 (372) = happyShift action_96-action_502 (373) = happyShift action_97-action_502 (374) = happyShift action_98-action_502 (376) = happyShift action_99-action_502 (377) = happyShift action_100-action_502 (378) = happyShift action_101-action_502 (379) = happyShift action_102-action_502 (380) = happyShift action_103-action_502 (38) = happyGoto action_13-action_502 (142) = happyGoto action_16-action_502 (143) = happyGoto action_800-action_502 (144) = happyGoto action_105-action_502 (145) = happyGoto action_18-action_502 (147) = happyGoto action_19-action_502 (148) = happyGoto action_20-action_502 (149) = happyGoto action_21-action_502 (150) = happyGoto action_22-action_502 (151) = happyGoto action_23-action_502 (152) = happyGoto action_24-action_502 (192) = happyGoto action_25-action_502 (195) = happyGoto action_26-action_502 (198) = happyGoto action_27-action_502 (219) = happyGoto action_29-action_502 (220) = happyGoto action_30-action_502 (221) = happyGoto action_106-action_502 (227) = happyGoto action_32-action_502 (229) = happyGoto action_33-action_502 (230) = happyGoto action_34-action_502 (233) = happyGoto action_35-action_502 _ = happyReduce_442--action_503 (244) = happyShift action_36-action_503 (245) = happyShift action_37-action_503 (246) = happyShift action_38-action_503 (251) = happyShift action_39-action_503 (253) = happyShift action_40-action_503 (254) = happyShift action_41-action_503 (261) = happyShift action_156-action_503 (265) = happyShift action_46-action_503 (266) = happyShift action_796-action_503 (269) = happyShift action_47-action_503 (270) = happyShift action_48-action_503 (272) = happyShift action_49-action_503 (273) = happyShift action_50-action_503 (274) = happyShift action_51-action_503 (275) = happyShift action_52-action_503 (276) = happyShift action_53-action_503 (277) = happyShift action_54-action_503 (278) = happyShift action_55-action_503 (279) = happyShift action_56-action_503 (280) = happyShift action_57-action_503 (281) = happyShift action_58-action_503 (282) = happyShift action_59-action_503 (283) = happyShift action_60-action_503 (284) = happyShift action_61-action_503 (286) = happyShift action_62-action_503 (294) = happyShift action_66-action_503 (295) = happyShift action_67-action_503 (296) = happyShift action_68-action_503 (311) = happyShift action_69-action_503 (317) = happyShift action_70-action_503 (320) = happyShift action_71-action_503 (321) = happyShift action_158-action_503 (332) = happyShift action_72-action_503 (334) = happyShift action_73-action_503 (336) = happyShift action_107-action_503 (338) = happyShift action_75-action_503 (340) = happyShift action_76-action_503 (345) = happyShift action_77-action_503 (346) = happyShift action_78-action_503 (347) = happyShift action_79-action_503 (350) = happyShift action_80-action_503 (351) = happyShift action_81-action_503 (354) = happyShift action_82-action_503 (355) = happyShift action_83-action_503 (356) = happyShift action_84-action_503 (357) = happyShift action_85-action_503 (358) = happyShift action_86-action_503 (359) = happyShift action_87-action_503 (360) = happyShift action_88-action_503 (361) = happyShift action_89-action_503 (362) = happyShift action_90-action_503 (363) = happyShift action_91-action_503 (364) = happyShift action_92-action_503 (365) = happyShift action_93-action_503 (366) = happyShift action_94-action_503 (371) = happyShift action_95-action_503 (372) = happyShift action_96-action_503 (373) = happyShift action_97-action_503 (374) = happyShift action_98-action_503 (376) = happyShift action_99-action_503 (377) = happyShift action_100-action_503 (378) = happyShift action_101-action_503 (379) = happyShift action_102-action_503 (380) = happyShift action_103-action_503 (38) = happyGoto action_13-action_503 (142) = happyGoto action_16-action_503 (143) = happyGoto action_152-action_503 (144) = happyGoto action_105-action_503 (145) = happyGoto action_18-action_503 (147) = happyGoto action_19-action_503 (148) = happyGoto action_20-action_503 (149) = happyGoto action_21-action_503 (150) = happyGoto action_22-action_503 (151) = happyGoto action_23-action_503 (152) = happyGoto action_24-action_503 (163) = happyGoto action_799-action_503 (164) = happyGoto action_792-action_503 (165) = happyGoto action_793-action_503 (166) = happyGoto action_794-action_503 (178) = happyGoto action_153-action_503 (186) = happyGoto action_795-action_503 (192) = happyGoto action_25-action_503 (195) = happyGoto action_26-action_503 (198) = happyGoto action_27-action_503 (219) = happyGoto action_29-action_503 (220) = happyGoto action_30-action_503 (221) = happyGoto action_106-action_503 (227) = happyGoto action_32-action_503 (229) = happyGoto action_33-action_503 (230) = happyGoto action_34-action_503 (233) = happyGoto action_35-action_503 _ = happyFail--action_504 (244) = happyShift action_36-action_504 (245) = happyShift action_37-action_504 (246) = happyShift action_38-action_504 (251) = happyShift action_39-action_504 (253) = happyShift action_40-action_504 (254) = happyShift action_41-action_504 (261) = happyShift action_45-action_504 (265) = happyShift action_46-action_504 (269) = happyShift action_47-action_504 (270) = happyShift action_48-action_504 (272) = happyShift action_49-action_504 (273) = happyShift action_50-action_504 (274) = happyShift action_51-action_504 (275) = happyShift action_52-action_504 (276) = happyShift action_53-action_504 (277) = happyShift action_54-action_504 (278) = happyShift action_55-action_504 (279) = happyShift action_56-action_504 (280) = happyShift action_57-action_504 (281) = happyShift action_58-action_504 (282) = happyShift action_59-action_504 (283) = happyShift action_60-action_504 (284) = happyShift action_61-action_504 (286) = happyShift action_62-action_504 (294) = happyShift action_66-action_504 (295) = happyShift action_67-action_504 (296) = happyShift action_68-action_504 (308) = happyShift action_212-action_504 (311) = happyShift action_69-action_504 (317) = happyShift action_70-action_504 (320) = happyShift action_71-action_504 (321) = happyShift action_214-action_504 (322) = happyShift action_215-action_504 (327) = happyShift action_216-action_504 (332) = happyShift action_72-action_504 (334) = happyShift action_73-action_504 (336) = happyShift action_107-action_504 (338) = happyShift action_75-action_504 (340) = happyShift action_76-action_504 (344) = happyShift action_380-action_504 (345) = happyShift action_77-action_504 (346) = happyShift action_78-action_504 (347) = happyShift action_79-action_504 (348) = happyShift action_221-action_504 (349) = happyShift action_222-action_504 (350) = happyShift action_80-action_504 (351) = happyShift action_81-action_504 (352) = happyShift action_223-action_504 (353) = happyShift action_224-action_504 (354) = happyShift action_82-action_504 (355) = happyShift action_83-action_504 (356) = happyShift action_84-action_504 (357) = happyShift action_85-action_504 (358) = happyShift action_86-action_504 (359) = happyShift action_87-action_504 (360) = happyShift action_88-action_504 (361) = happyShift action_89-action_504 (362) = happyShift action_90-action_504 (363) = happyShift action_91-action_504 (364) = happyShift action_92-action_504 (365) = happyShift action_93-action_504 (366) = happyShift action_94-action_504 (371) = happyShift action_95-action_504 (372) = happyShift action_96-action_504 (373) = happyShift action_97-action_504 (374) = happyShift action_98-action_504 (376) = happyShift action_99-action_504 (377) = happyShift action_100-action_504 (378) = happyShift action_101-action_504 (379) = happyShift action_102-action_504 (380) = happyShift action_103-action_504 (38) = happyGoto action_13-action_504 (142) = happyGoto action_16-action_504 (143) = happyGoto action_798-action_504 (144) = happyGoto action_368-action_504 (145) = happyGoto action_18-action_504 (147) = happyGoto action_19-action_504 (148) = happyGoto action_20-action_504 (149) = happyGoto action_21-action_504 (150) = happyGoto action_22-action_504 (151) = happyGoto action_23-action_504 (152) = happyGoto action_24-action_504 (157) = happyGoto action_790-action_504 (192) = happyGoto action_25-action_504 (195) = happyGoto action_26-action_504 (198) = happyGoto action_27-action_504 (200) = happyGoto action_371-action_504 (212) = happyGoto action_372-action_504 (214) = happyGoto action_373-action_504 (219) = happyGoto action_29-action_504 (220) = happyGoto action_30-action_504 (221) = happyGoto action_106-action_504 (223) = happyGoto action_374-action_504 (224) = happyGoto action_407-action_504 (226) = happyGoto action_408-action_504 (227) = happyGoto action_32-action_504 (228) = happyGoto action_209-action_504 (229) = happyGoto action_33-action_504 (230) = happyGoto action_34-action_504 (231) = happyGoto action_210-action_504 (232) = happyGoto action_211-action_504 (233) = happyGoto action_35-action_504 _ = happyFail--action_505 _ = happyReduce_409--action_506 (244) = happyShift action_36-action_506 (245) = happyShift action_37-action_506 (246) = happyShift action_38-action_506 (251) = happyShift action_39-action_506 (253) = happyShift action_40-action_506 (254) = happyShift action_41-action_506 (261) = happyShift action_45-action_506 (265) = happyShift action_46-action_506 (269) = happyShift action_47-action_506 (270) = happyShift action_48-action_506 (272) = happyShift action_49-action_506 (273) = happyShift action_50-action_506 (274) = happyShift action_51-action_506 (275) = happyShift action_52-action_506 (276) = happyShift action_53-action_506 (277) = happyShift action_54-action_506 (278) = happyShift action_55-action_506 (279) = happyShift action_56-action_506 (280) = happyShift action_57-action_506 (281) = happyShift action_58-action_506 (282) = happyShift action_59-action_506 (283) = happyShift action_60-action_506 (284) = happyShift action_61-action_506 (286) = happyShift action_62-action_506 (294) = happyShift action_66-action_506 (295) = happyShift action_67-action_506 (296) = happyShift action_68-action_506 (311) = happyShift action_69-action_506 (317) = happyShift action_70-action_506 (320) = happyShift action_71-action_506 (332) = happyShift action_72-action_506 (334) = happyShift action_73-action_506 (336) = happyShift action_107-action_506 (338) = happyShift action_75-action_506 (340) = happyShift action_76-action_506 (345) = happyShift action_77-action_506 (346) = happyShift action_78-action_506 (347) = happyShift action_79-action_506 (350) = happyShift action_80-action_506 (351) = happyShift action_81-action_506 (354) = happyShift action_82-action_506 (355) = happyShift action_83-action_506 (356) = happyShift action_84-action_506 (357) = happyShift action_85-action_506 (358) = happyShift action_86-action_506 (359) = happyShift action_87-action_506 (360) = happyShift action_88-action_506 (361) = happyShift action_89-action_506 (362) = happyShift action_90-action_506 (363) = happyShift action_91-action_506 (364) = happyShift action_92-action_506 (365) = happyShift action_93-action_506 (366) = happyShift action_94-action_506 (371) = happyShift action_95-action_506 (372) = happyShift action_96-action_506 (373) = happyShift action_97-action_506 (374) = happyShift action_98-action_506 (376) = happyShift action_99-action_506 (377) = happyShift action_100-action_506 (378) = happyShift action_101-action_506 (379) = happyShift action_102-action_506 (380) = happyShift action_103-action_506 (38) = happyGoto action_13-action_506 (142) = happyGoto action_16-action_506 (143) = happyGoto action_797-action_506 (144) = happyGoto action_105-action_506 (145) = happyGoto action_18-action_506 (147) = happyGoto action_19-action_506 (148) = happyGoto action_20-action_506 (149) = happyGoto action_21-action_506 (150) = happyGoto action_22-action_506 (151) = happyGoto action_23-action_506 (152) = happyGoto action_24-action_506 (192) = happyGoto action_25-action_506 (195) = happyGoto action_26-action_506 (198) = happyGoto action_27-action_506 (219) = happyGoto action_29-action_506 (220) = happyGoto action_30-action_506 (221) = happyGoto action_106-action_506 (227) = happyGoto action_32-action_506 (229) = happyGoto action_33-action_506 (230) = happyGoto action_34-action_506 (233) = happyGoto action_35-action_506 _ = happyFail--action_507 (244) = happyShift action_36-action_507 (245) = happyShift action_37-action_507 (246) = happyShift action_38-action_507 (251) = happyShift action_39-action_507 (253) = happyShift action_40-action_507 (254) = happyShift action_41-action_507 (261) = happyShift action_156-action_507 (265) = happyShift action_46-action_507 (266) = happyShift action_796-action_507 (269) = happyShift action_47-action_507 (270) = happyShift action_48-action_507 (272) = happyShift action_49-action_507 (273) = happyShift action_50-action_507 (274) = happyShift action_51-action_507 (275) = happyShift action_52-action_507 (276) = happyShift action_53-action_507 (277) = happyShift action_54-action_507 (278) = happyShift action_55-action_507 (279) = happyShift action_56-action_507 (280) = happyShift action_57-action_507 (281) = happyShift action_58-action_507 (282) = happyShift action_59-action_507 (283) = happyShift action_60-action_507 (284) = happyShift action_61-action_507 (286) = happyShift action_62-action_507 (294) = happyShift action_66-action_507 (295) = happyShift action_67-action_507 (296) = happyShift action_68-action_507 (311) = happyShift action_69-action_507 (317) = happyShift action_70-action_507 (320) = happyShift action_71-action_507 (321) = happyShift action_158-action_507 (332) = happyShift action_72-action_507 (334) = happyShift action_73-action_507 (336) = happyShift action_107-action_507 (338) = happyShift action_75-action_507 (340) = happyShift action_76-action_507 (345) = happyShift action_77-action_507 (346) = happyShift action_78-action_507 (347) = happyShift action_79-action_507 (350) = happyShift action_80-action_507 (351) = happyShift action_81-action_507 (354) = happyShift action_82-action_507 (355) = happyShift action_83-action_507 (356) = happyShift action_84-action_507 (357) = happyShift action_85-action_507 (358) = happyShift action_86-action_507 (359) = happyShift action_87-action_507 (360) = happyShift action_88-action_507 (361) = happyShift action_89-action_507 (362) = happyShift action_90-action_507 (363) = happyShift action_91-action_507 (364) = happyShift action_92-action_507 (365) = happyShift action_93-action_507 (366) = happyShift action_94-action_507 (371) = happyShift action_95-action_507 (372) = happyShift action_96-action_507 (373) = happyShift action_97-action_507 (374) = happyShift action_98-action_507 (376) = happyShift action_99-action_507 (377) = happyShift action_100-action_507 (378) = happyShift action_101-action_507 (379) = happyShift action_102-action_507 (380) = happyShift action_103-action_507 (38) = happyGoto action_13-action_507 (142) = happyGoto action_16-action_507 (143) = happyGoto action_152-action_507 (144) = happyGoto action_105-action_507 (145) = happyGoto action_18-action_507 (147) = happyGoto action_19-action_507 (148) = happyGoto action_20-action_507 (149) = happyGoto action_21-action_507 (150) = happyGoto action_22-action_507 (151) = happyGoto action_23-action_507 (152) = happyGoto action_24-action_507 (163) = happyGoto action_791-action_507 (164) = happyGoto action_792-action_507 (165) = happyGoto action_793-action_507 (166) = happyGoto action_794-action_507 (178) = happyGoto action_153-action_507 (186) = happyGoto action_795-action_507 (192) = happyGoto action_25-action_507 (195) = happyGoto action_26-action_507 (198) = happyGoto action_27-action_507 (219) = happyGoto action_29-action_507 (220) = happyGoto action_30-action_507 (221) = happyGoto action_106-action_507 (227) = happyGoto action_32-action_507 (229) = happyGoto action_33-action_507 (230) = happyGoto action_34-action_507 (233) = happyGoto action_35-action_507 _ = happyFail--action_508 (244) = happyShift action_36-action_508 (245) = happyShift action_37-action_508 (246) = happyShift action_38-action_508 (251) = happyShift action_39-action_508 (253) = happyShift action_40-action_508 (254) = happyShift action_41-action_508 (261) = happyShift action_45-action_508 (265) = happyShift action_46-action_508 (269) = happyShift action_47-action_508 (270) = happyShift action_48-action_508 (272) = happyShift action_49-action_508 (273) = happyShift action_50-action_508 (274) = happyShift action_51-action_508 (275) = happyShift action_52-action_508 (276) = happyShift action_53-action_508 (277) = happyShift action_54-action_508 (278) = happyShift action_55-action_508 (279) = happyShift action_56-action_508 (280) = happyShift action_57-action_508 (281) = happyShift action_58-action_508 (282) = happyShift action_59-action_508 (283) = happyShift action_60-action_508 (284) = happyShift action_61-action_508 (286) = happyShift action_62-action_508 (294) = happyShift action_66-action_508 (295) = happyShift action_67-action_508 (296) = happyShift action_68-action_508 (308) = happyShift action_212-action_508 (311) = happyShift action_69-action_508 (317) = happyShift action_70-action_508 (320) = happyShift action_71-action_508 (321) = happyShift action_214-action_508 (322) = happyShift action_215-action_508 (327) = happyShift action_216-action_508 (332) = happyShift action_72-action_508 (334) = happyShift action_73-action_508 (336) = happyShift action_107-action_508 (338) = happyShift action_75-action_508 (340) = happyShift action_76-action_508 (344) = happyShift action_380-action_508 (345) = happyShift action_77-action_508 (346) = happyShift action_78-action_508 (347) = happyShift action_79-action_508 (348) = happyShift action_221-action_508 (349) = happyShift action_222-action_508 (350) = happyShift action_80-action_508 (351) = happyShift action_81-action_508 (352) = happyShift action_223-action_508 (353) = happyShift action_224-action_508 (354) = happyShift action_82-action_508 (355) = happyShift action_83-action_508 (356) = happyShift action_84-action_508 (357) = happyShift action_85-action_508 (358) = happyShift action_86-action_508 (359) = happyShift action_87-action_508 (360) = happyShift action_88-action_508 (361) = happyShift action_89-action_508 (362) = happyShift action_90-action_508 (363) = happyShift action_91-action_508 (364) = happyShift action_92-action_508 (365) = happyShift action_93-action_508 (366) = happyShift action_94-action_508 (371) = happyShift action_95-action_508 (372) = happyShift action_96-action_508 (373) = happyShift action_97-action_508 (374) = happyShift action_98-action_508 (376) = happyShift action_99-action_508 (377) = happyShift action_100-action_508 (378) = happyShift action_101-action_508 (379) = happyShift action_102-action_508 (380) = happyShift action_103-action_508 (38) = happyGoto action_13-action_508 (142) = happyGoto action_16-action_508 (143) = happyGoto action_789-action_508 (144) = happyGoto action_368-action_508 (145) = happyGoto action_18-action_508 (147) = happyGoto action_19-action_508 (148) = happyGoto action_20-action_508 (149) = happyGoto action_21-action_508 (150) = happyGoto action_22-action_508 (151) = happyGoto action_23-action_508 (152) = happyGoto action_24-action_508 (157) = happyGoto action_790-action_508 (192) = happyGoto action_25-action_508 (195) = happyGoto action_26-action_508 (198) = happyGoto action_27-action_508 (200) = happyGoto action_371-action_508 (212) = happyGoto action_372-action_508 (214) = happyGoto action_373-action_508 (219) = happyGoto action_29-action_508 (220) = happyGoto action_30-action_508 (221) = happyGoto action_106-action_508 (223) = happyGoto action_374-action_508 (224) = happyGoto action_407-action_508 (226) = happyGoto action_408-action_508 (227) = happyGoto action_32-action_508 (228) = happyGoto action_209-action_508 (229) = happyGoto action_33-action_508 (230) = happyGoto action_34-action_508 (231) = happyGoto action_210-action_508 (232) = happyGoto action_211-action_508 (233) = happyGoto action_35-action_508 _ = happyFail--action_509 (343) = happyReduce_582-action_509 _ = happyReduce_584--action_510 (343) = happyShift action_244-action_510 (159) = happyGoto action_788-action_510 (236) = happyGoto action_516-action_510 _ = happyReduce_438--action_511 _ = happyReduce_435--action_512 _ = happyReduce_530--action_513 _ = happyReduce_639--action_514 _ = happyReduce_407--action_515 _ = happyReduce_434--action_516 (244) = happyShift action_36-action_516 (245) = happyShift action_37-action_516 (246) = happyShift action_38-action_516 (251) = happyShift action_39-action_516 (253) = happyShift action_40-action_516 (254) = happyShift action_41-action_516 (261) = happyShift action_45-action_516 (265) = happyShift action_46-action_516 (269) = happyShift action_47-action_516 (270) = happyShift action_48-action_516 (272) = happyShift action_49-action_516 (273) = happyShift action_50-action_516 (274) = happyShift action_51-action_516 (275) = happyShift action_52-action_516 (276) = happyShift action_53-action_516 (277) = happyShift action_54-action_516 (278) = happyShift action_55-action_516 (279) = happyShift action_56-action_516 (280) = happyShift action_57-action_516 (281) = happyShift action_58-action_516 (282) = happyShift action_59-action_516 (283) = happyShift action_60-action_516 (284) = happyShift action_61-action_516 (286) = happyShift action_62-action_516 (294) = happyShift action_66-action_516 (295) = happyShift action_67-action_516 (296) = happyShift action_68-action_516 (308) = happyShift action_212-action_516 (311) = happyShift action_69-action_516 (317) = happyShift action_70-action_516 (320) = happyShift action_71-action_516 (321) = happyShift action_214-action_516 (322) = happyShift action_215-action_516 (327) = happyShift action_216-action_516 (332) = happyShift action_72-action_516 (334) = happyShift action_73-action_516 (336) = happyShift action_107-action_516 (338) = happyShift action_75-action_516 (340) = happyShift action_76-action_516 (343) = happyShift action_513-action_516 (344) = happyShift action_380-action_516 (345) = happyShift action_77-action_516 (346) = happyShift action_78-action_516 (347) = happyShift action_79-action_516 (348) = happyShift action_221-action_516 (349) = happyShift action_222-action_516 (350) = happyShift action_80-action_516 (351) = happyShift action_81-action_516 (352) = happyShift action_223-action_516 (353) = happyShift action_224-action_516 (354) = happyShift action_82-action_516 (355) = happyShift action_83-action_516 (356) = happyShift action_84-action_516 (357) = happyShift action_85-action_516 (358) = happyShift action_86-action_516 (359) = happyShift action_87-action_516 (360) = happyShift action_88-action_516 (361) = happyShift action_89-action_516 (362) = happyShift action_90-action_516 (363) = happyShift action_91-action_516 (364) = happyShift action_92-action_516 (365) = happyShift action_93-action_516 (366) = happyShift action_94-action_516 (371) = happyShift action_95-action_516 (372) = happyShift action_96-action_516 (373) = happyShift action_97-action_516 (374) = happyShift action_98-action_516 (376) = happyShift action_99-action_516 (377) = happyShift action_100-action_516 (378) = happyShift action_101-action_516 (379) = happyShift action_102-action_516 (380) = happyShift action_103-action_516 (38) = happyGoto action_13-action_516 (142) = happyGoto action_16-action_516 (143) = happyGoto action_367-action_516 (144) = happyGoto action_368-action_516 (145) = happyGoto action_18-action_516 (147) = happyGoto action_19-action_516 (148) = happyGoto action_20-action_516 (149) = happyGoto action_21-action_516 (150) = happyGoto action_22-action_516 (151) = happyGoto action_23-action_516 (152) = happyGoto action_24-action_516 (157) = happyGoto action_510-action_516 (160) = happyGoto action_787-action_516 (192) = happyGoto action_25-action_516 (195) = happyGoto action_26-action_516 (198) = happyGoto action_27-action_516 (200) = happyGoto action_371-action_516 (212) = happyGoto action_372-action_516 (214) = happyGoto action_373-action_516 (219) = happyGoto action_29-action_516 (220) = happyGoto action_30-action_516 (221) = happyGoto action_106-action_516 (223) = happyGoto action_374-action_516 (224) = happyGoto action_407-action_516 (226) = happyGoto action_408-action_516 (227) = happyGoto action_32-action_516 (228) = happyGoto action_209-action_516 (229) = happyGoto action_33-action_516 (230) = happyGoto action_34-action_516 (231) = happyGoto action_210-action_516 (232) = happyGoto action_211-action_516 (233) = happyGoto action_35-action_516 _ = happyReduce_439--action_517 _ = happyReduce_406--action_518 (244) = happyShift action_36-action_518 (245) = happyShift action_37-action_518 (253) = happyShift action_40-action_518 (265) = happyShift action_46-action_518 (270) = happyShift action_48-action_518 (272) = happyShift action_49-action_518 (273) = happyShift action_50-action_518 (274) = happyShift action_51-action_518 (275) = happyShift action_52-action_518 (276) = happyShift action_53-action_518 (277) = happyShift action_54-action_518 (279) = happyShift action_56-action_518 (280) = happyShift action_57-action_518 (281) = happyShift action_58-action_518 (282) = happyShift action_59-action_518 (283) = happyShift action_60-action_518 (286) = happyShift action_62-action_518 (332) = happyShift action_72-action_518 (334) = happyShift action_73-action_518 (336) = happyShift action_107-action_518 (338) = happyShift action_75-action_518 (340) = happyShift action_76-action_518 (341) = happyShift action_786-action_518 (345) = happyShift action_77-action_518 (346) = happyShift action_78-action_518 (347) = happyShift action_79-action_518 (350) = happyShift action_80-action_518 (351) = happyShift action_81-action_518 (354) = happyShift action_82-action_518 (355) = happyShift action_83-action_518 (356) = happyShift action_84-action_518 (357) = happyShift action_85-action_518 (358) = happyShift action_86-action_518 (359) = happyShift action_87-action_518 (360) = happyShift action_88-action_518 (361) = happyShift action_89-action_518 (362) = happyShift action_90-action_518 (363) = happyShift action_91-action_518 (364) = happyShift action_92-action_518 (365) = happyShift action_93-action_518 (366) = happyShift action_94-action_518 (371) = happyShift action_95-action_518 (372) = happyShift action_96-action_518 (373) = happyShift action_97-action_518 (374) = happyShift action_98-action_518 (376) = happyShift action_99-action_518 (377) = happyShift action_100-action_518 (378) = happyShift action_101-action_518 (379) = happyShift action_102-action_518 (380) = happyShift action_103-action_518 (38) = happyGoto action_13-action_518 (142) = happyGoto action_16-action_518 (152) = happyGoto action_784-action_518 (154) = happyGoto action_785-action_518 (192) = happyGoto action_25-action_518 (195) = happyGoto action_26-action_518 (198) = happyGoto action_27-action_518 (219) = happyGoto action_404-action_518 (220) = happyGoto action_30-action_518 (221) = happyGoto action_106-action_518 (227) = happyGoto action_32-action_518 (229) = happyGoto action_33-action_518 (230) = happyGoto action_34-action_518 (233) = happyGoto action_35-action_518 _ = happyFail--action_519 _ = happyReduce_417--action_520 _ = happyReduce_419--action_521 _ = happyReduce_418--action_522 _ = happyReduce_429--action_523 (1) = happyShift action_664-action_523 (331) = happyShift action_665-action_523 (234) = happyGoto action_783-action_523 _ = happyFail--action_524 (329) = happyShift action_782-action_524 _ = happyFail--action_525 _ = happyReduce_420--action_526 _ = happyReduce_412--action_527 _ = happyReduce_538--action_528 _ = happyReduce_537--action_529 _ = happyReduce_368--action_530 _ = happyReduce_367--action_531 _ = happyReduce_366--action_532 _ = happyReduce_365--action_533 _ = happyReduce_364--action_534 (344) = happyShift action_781-action_534 _ = happyFail--action_535 _ = happyReduce_528--action_536 _ = happyReduce_520--action_537 _ = happyReduce_585--action_538 (308) = happyShift action_212-action_538 (320) = happyShift action_213-action_538 (321) = happyShift action_214-action_538 (322) = happyShift action_215-action_538 (327) = happyShift action_216-action_538 (344) = happyShift action_220-action_538 (348) = happyShift action_221-action_538 (349) = happyShift action_222-action_538 (352) = happyShift action_223-action_538 (353) = happyShift action_224-action_538 (200) = happyGoto action_359-action_538 (211) = happyGoto action_360-action_538 (213) = happyGoto action_361-action_538 (222) = happyGoto action_205-action_538 (224) = happyGoto action_206-action_538 (225) = happyGoto action_207-action_538 (226) = happyGoto action_208-action_538 (228) = happyGoto action_209-action_538 (231) = happyGoto action_210-action_538 (232) = happyGoto action_211-action_538 _ = happyReduce_432--action_539 _ = happyReduce_405--action_540 _ = happyReduce_404--action_541 (244) = happyShift action_36-action_541 (245) = happyShift action_37-action_541 (246) = happyShift action_38-action_541 (251) = happyShift action_39-action_541 (253) = happyShift action_40-action_541 (254) = happyShift action_41-action_541 (261) = happyShift action_45-action_541 (265) = happyShift action_46-action_541 (269) = happyShift action_47-action_541 (270) = happyShift action_48-action_541 (272) = happyShift action_49-action_541 (273) = happyShift action_50-action_541 (274) = happyShift action_51-action_541 (275) = happyShift action_52-action_541 (276) = happyShift action_53-action_541 (277) = happyShift action_54-action_541 (278) = happyShift action_55-action_541 (279) = happyShift action_56-action_541 (280) = happyShift action_57-action_541 (281) = happyShift action_58-action_541 (282) = happyShift action_59-action_541 (283) = happyShift action_60-action_541 (284) = happyShift action_61-action_541 (286) = happyShift action_62-action_541 (294) = happyShift action_66-action_541 (295) = happyShift action_67-action_541 (296) = happyShift action_68-action_541 (311) = happyShift action_69-action_541 (317) = happyShift action_70-action_541 (320) = happyShift action_71-action_541 (332) = happyShift action_72-action_541 (334) = happyShift action_73-action_541 (336) = happyShift action_107-action_541 (338) = happyShift action_75-action_541 (340) = happyShift action_76-action_541 (345) = happyShift action_77-action_541 (346) = happyShift action_78-action_541 (347) = happyShift action_79-action_541 (350) = happyShift action_80-action_541 (351) = happyShift action_81-action_541 (354) = happyShift action_82-action_541 (355) = happyShift action_83-action_541 (356) = happyShift action_84-action_541 (357) = happyShift action_85-action_541 (358) = happyShift action_86-action_541 (359) = happyShift action_87-action_541 (360) = happyShift action_88-action_541 (361) = happyShift action_89-action_541 (362) = happyShift action_90-action_541 (363) = happyShift action_91-action_541 (364) = happyShift action_92-action_541 (365) = happyShift action_93-action_541 (366) = happyShift action_94-action_541 (371) = happyShift action_95-action_541 (372) = happyShift action_96-action_541 (373) = happyShift action_97-action_541 (374) = happyShift action_98-action_541 (376) = happyShift action_99-action_541 (377) = happyShift action_100-action_541 (378) = happyShift action_101-action_541 (379) = happyShift action_102-action_541 (380) = happyShift action_103-action_541 (38) = happyGoto action_13-action_541 (142) = happyGoto action_16-action_541 (145) = happyGoto action_554-action_541 (147) = happyGoto action_19-action_541 (148) = happyGoto action_20-action_541 (149) = happyGoto action_21-action_541 (150) = happyGoto action_22-action_541 (151) = happyGoto action_23-action_541 (152) = happyGoto action_24-action_541 (192) = happyGoto action_25-action_541 (195) = happyGoto action_26-action_541 (198) = happyGoto action_27-action_541 (219) = happyGoto action_29-action_541 (220) = happyGoto action_30-action_541 (221) = happyGoto action_106-action_541 (227) = happyGoto action_32-action_541 (229) = happyGoto action_33-action_541 (230) = happyGoto action_34-action_541 (233) = happyGoto action_35-action_541 _ = happyReduce_431--action_542 (244) = happyShift action_36-action_542 (245) = happyShift action_37-action_542 (246) = happyShift action_38-action_542 (251) = happyShift action_39-action_542 (253) = happyShift action_40-action_542 (254) = happyShift action_41-action_542 (261) = happyShift action_45-action_542 (265) = happyShift action_46-action_542 (269) = happyShift action_47-action_542 (270) = happyShift action_48-action_542 (272) = happyShift action_49-action_542 (273) = happyShift action_50-action_542 (274) = happyShift action_51-action_542 (275) = happyShift action_52-action_542 (276) = happyShift action_53-action_542 (277) = happyShift action_54-action_542 (278) = happyShift action_55-action_542 (279) = happyShift action_56-action_542 (280) = happyShift action_57-action_542 (281) = happyShift action_58-action_542 (282) = happyShift action_59-action_542 (283) = happyShift action_60-action_542 (284) = happyShift action_61-action_542 (286) = happyShift action_62-action_542 (294) = happyShift action_66-action_542 (295) = happyShift action_67-action_542 (296) = happyShift action_68-action_542 (308) = happyShift action_212-action_542 (311) = happyShift action_69-action_542 (317) = happyShift action_70-action_542 (320) = happyShift action_71-action_542 (321) = happyShift action_214-action_542 (322) = happyShift action_215-action_542 (327) = happyShift action_216-action_542 (332) = happyShift action_72-action_542 (334) = happyShift action_73-action_542 (336) = happyShift action_107-action_542 (338) = happyShift action_75-action_542 (340) = happyShift action_76-action_542 (344) = happyShift action_380-action_542 (345) = happyShift action_77-action_542 (346) = happyShift action_78-action_542 (347) = happyShift action_79-action_542 (348) = happyShift action_221-action_542 (349) = happyShift action_222-action_542 (350) = happyShift action_80-action_542 (351) = happyShift action_81-action_542 (352) = happyShift action_223-action_542 (353) = happyShift action_224-action_542 (354) = happyShift action_82-action_542 (355) = happyShift action_83-action_542 (356) = happyShift action_84-action_542 (357) = happyShift action_85-action_542 (358) = happyShift action_86-action_542 (359) = happyShift action_87-action_542 (360) = happyShift action_88-action_542 (361) = happyShift action_89-action_542 (362) = happyShift action_90-action_542 (363) = happyShift action_91-action_542 (364) = happyShift action_92-action_542 (365) = happyShift action_93-action_542 (366) = happyShift action_94-action_542 (371) = happyShift action_95-action_542 (372) = happyShift action_96-action_542 (373) = happyShift action_97-action_542 (374) = happyShift action_98-action_542 (376) = happyShift action_99-action_542 (377) = happyShift action_100-action_542 (378) = happyShift action_101-action_542 (379) = happyShift action_102-action_542 (380) = happyShift action_103-action_542 (38) = happyGoto action_13-action_542 (142) = happyGoto action_16-action_542 (143) = happyGoto action_367-action_542 (144) = happyGoto action_368-action_542 (145) = happyGoto action_18-action_542 (147) = happyGoto action_19-action_542 (148) = happyGoto action_20-action_542 (149) = happyGoto action_21-action_542 (150) = happyGoto action_22-action_542 (151) = happyGoto action_23-action_542 (152) = happyGoto action_24-action_542 (157) = happyGoto action_780-action_542 (192) = happyGoto action_25-action_542 (195) = happyGoto action_26-action_542 (198) = happyGoto action_27-action_542 (200) = happyGoto action_371-action_542 (212) = happyGoto action_372-action_542 (214) = happyGoto action_373-action_542 (219) = happyGoto action_29-action_542 (220) = happyGoto action_30-action_542 (221) = happyGoto action_106-action_542 (223) = happyGoto action_374-action_542 (224) = happyGoto action_407-action_542 (226) = happyGoto action_408-action_542 (227) = happyGoto action_32-action_542 (228) = happyGoto action_209-action_542 (229) = happyGoto action_33-action_542 (230) = happyGoto action_34-action_542 (231) = happyGoto action_210-action_542 (232) = happyGoto action_211-action_542 (233) = happyGoto action_35-action_542 _ = happyFail--action_543 (297) = happyShift action_673-action_543 (298) = happyShift action_674-action_543 (21) = happyGoto action_779-action_543 _ = happyReduce_26--action_544 _ = happyReduce_637--action_545 _ = happyReduce_638--action_546 (306) = happyShift action_777-action_546 (358) = happyShift action_778-action_546 _ = happyFail--action_547 (309) = happyShift action_746-action_547 (310) = happyReduce_649-action_547 (367) = happyShift action_146-action_547 (59) = happyGoto action_775-action_547 (126) = happyGoto action_776-action_547 (237) = happyGoto action_280-action_547 (243) = happyGoto action_774-action_547 _ = happyReduce_132--action_548 (309) = happyShift action_746-action_548 (310) = happyReduce_649-action_548 (367) = happyShift action_146-action_548 (59) = happyGoto action_772-action_548 (126) = happyGoto action_773-action_548 (237) = happyGoto action_280-action_548 (243) = happyGoto action_774-action_548 _ = happyReduce_132--action_549 _ = happyReduce_217--action_550 (319) = happyShift action_771-action_550 _ = happyFail--action_551 (245) = happyShift action_37-action_551 (253) = happyShift action_40-action_551 (265) = happyShift action_46-action_551 (272) = happyShift action_49-action_551 (273) = happyShift action_50-action_551 (274) = happyShift action_51-action_551 (275) = happyShift action_180-action_551 (276) = happyShift action_181-action_551 (277) = happyShift action_182-action_551 (280) = happyShift action_57-action_551 (281) = happyShift action_58-action_551 (282) = happyShift action_59-action_551 (283) = happyShift action_60-action_551 (286) = happyShift action_62-action_551 (299) = happyShift action_183-action_551 (300) = happyShift action_184-action_551 (310) = happyReduce_241-action_551 (313) = happyReduce_241-action_551 (315) = happyShift action_768-action_551 (317) = happyShift action_769-action_551 (319) = happyReduce_240-action_551 (321) = happyShift action_185-action_551 (322) = happyShift action_267-action_551 (327) = happyShift action_295-action_551 (328) = happyShift action_186-action_551 (332) = happyShift action_187-action_551 (334) = happyShift action_188-action_551 (336) = happyShift action_189-action_551 (338) = happyShift action_190-action_551 (344) = happyShift action_296-action_551 (345) = happyShift action_770-action_551 (346) = happyShift action_192-action_551 (347) = happyShift action_193-action_551 (348) = happyShift action_269-action_551 (349) = happyShift action_270-action_551 (351) = happyShift action_194-action_551 (352) = happyShift action_271-action_551 (353) = happyShift action_272-action_551 (355) = happyShift action_195-action_551 (358) = happyShift action_196-action_551 (359) = happyShift action_197-action_551 (368) = happyShift action_147-action_551 (376) = happyShift action_198-action_551 (377) = happyShift action_199-action_551 (379) = happyShift action_102-action_551 (380) = happyShift action_103-action_551 (100) = happyGoto action_164-action_551 (107) = happyGoto action_289-action_551 (142) = happyGoto action_170-action_551 (202) = happyGoto action_172-action_551 (203) = happyGoto action_173-action_551 (204) = happyGoto action_765-action_551 (205) = happyGoto action_174-action_551 (206) = happyGoto action_175-action_551 (207) = happyGoto action_291-action_551 (208) = happyGoto action_262-action_551 (215) = happyGoto action_176-action_551 (216) = happyGoto action_766-action_551 (217) = happyGoto action_177-action_551 (227) = happyGoto action_178-action_551 (238) = happyGoto action_767-action_551 _ = happyReduce_248--action_552 (309) = happyShift action_764-action_552 _ = happyFail--action_553 (245) = happyShift action_37-action_553 (253) = happyShift action_40-action_553 (265) = happyShift action_46-action_553 (272) = happyShift action_49-action_553 (273) = happyShift action_50-action_553 (274) = happyShift action_51-action_553 (275) = happyShift action_180-action_553 (276) = happyShift action_181-action_553 (277) = happyShift action_182-action_553 (280) = happyShift action_57-action_553 (281) = happyShift action_58-action_553 (282) = happyShift action_59-action_553 (283) = happyShift action_60-action_553 (286) = happyShift action_62-action_553 (336) = happyShift action_287-action_553 (346) = happyShift action_192-action_553 (112) = happyGoto action_763-action_553 (113) = happyGoto action_285-action_553 (215) = happyGoto action_286-action_553 (217) = happyGoto action_177-action_553 (227) = happyGoto action_178-action_553 _ = happyReduce_291--action_554 _ = happyReduce_371--action_555 _ = happyReduce_348--action_556 (268) = happyShift action_762-action_556 (313) = happyShift action_559-action_556 (74) = happyGoto action_760-action_556 (140) = happyGoto action_761-action_556 _ = happyReduce_171--action_557 _ = happyReduce_353--action_558 (244) = happyShift action_36-action_558 (245) = happyShift action_37-action_558 (246) = happyShift action_38-action_558 (251) = happyShift action_39-action_558 (253) = happyShift action_40-action_558 (254) = happyShift action_41-action_558 (261) = happyShift action_45-action_558 (265) = happyShift action_46-action_558 (269) = happyShift action_47-action_558 (270) = happyShift action_48-action_558 (272) = happyShift action_49-action_558 (273) = happyShift action_50-action_558 (274) = happyShift action_51-action_558 (275) = happyShift action_52-action_558 (276) = happyShift action_53-action_558 (277) = happyShift action_54-action_558 (278) = happyShift action_55-action_558 (279) = happyShift action_56-action_558 (280) = happyShift action_57-action_558 (281) = happyShift action_58-action_558 (282) = happyShift action_59-action_558 (283) = happyShift action_60-action_558 (284) = happyShift action_61-action_558 (286) = happyShift action_62-action_558 (294) = happyShift action_66-action_558 (295) = happyShift action_67-action_558 (296) = happyShift action_68-action_558 (311) = happyShift action_69-action_558 (317) = happyShift action_70-action_558 (320) = happyShift action_71-action_558 (332) = happyShift action_72-action_558 (334) = happyShift action_73-action_558 (336) = happyShift action_107-action_558 (338) = happyShift action_75-action_558 (340) = happyShift action_76-action_558 (345) = happyShift action_77-action_558 (346) = happyShift action_78-action_558 (347) = happyShift action_79-action_558 (350) = happyShift action_80-action_558 (351) = happyShift action_81-action_558 (354) = happyShift action_82-action_558 (355) = happyShift action_83-action_558 (356) = happyShift action_84-action_558 (357) = happyShift action_85-action_558 (358) = happyShift action_86-action_558 (359) = happyShift action_87-action_558 (360) = happyShift action_88-action_558 (361) = happyShift action_89-action_558 (362) = happyShift action_90-action_558 (363) = happyShift action_91-action_558 (364) = happyShift action_92-action_558 (365) = happyShift action_93-action_558 (366) = happyShift action_94-action_558 (371) = happyShift action_95-action_558 (372) = happyShift action_96-action_558 (373) = happyShift action_97-action_558 (374) = happyShift action_98-action_558 (376) = happyShift action_99-action_558 (377) = happyShift action_100-action_558 (378) = happyShift action_101-action_558 (379) = happyShift action_102-action_558 (380) = happyShift action_103-action_558 (38) = happyGoto action_13-action_558 (142) = happyGoto action_16-action_558 (143) = happyGoto action_759-action_558 (144) = happyGoto action_105-action_558 (145) = happyGoto action_18-action_558 (147) = happyGoto action_19-action_558 (148) = happyGoto action_20-action_558 (149) = happyGoto action_21-action_558 (150) = happyGoto action_22-action_558 (151) = happyGoto action_23-action_558 (152) = happyGoto action_24-action_558 (192) = happyGoto action_25-action_558 (195) = happyGoto action_26-action_558 (198) = happyGoto action_27-action_558 (219) = happyGoto action_29-action_558 (220) = happyGoto action_30-action_558 (221) = happyGoto action_106-action_558 (227) = happyGoto action_32-action_558 (229) = happyGoto action_33-action_558 (230) = happyGoto action_34-action_558 (233) = happyGoto action_35-action_558 _ = happyFail--action_559 (244) = happyShift action_36-action_559 (245) = happyShift action_37-action_559 (246) = happyShift action_38-action_559 (251) = happyShift action_39-action_559 (253) = happyShift action_40-action_559 (254) = happyShift action_41-action_559 (261) = happyShift action_156-action_559 (265) = happyShift action_46-action_559 (269) = happyShift action_47-action_559 (270) = happyShift action_48-action_559 (272) = happyShift action_49-action_559 (273) = happyShift action_50-action_559 (274) = happyShift action_51-action_559 (275) = happyShift action_52-action_559 (276) = happyShift action_53-action_559 (277) = happyShift action_54-action_559 (278) = happyShift action_55-action_559 (279) = happyShift action_56-action_559 (280) = happyShift action_57-action_559 (281) = happyShift action_58-action_559 (282) = happyShift action_59-action_559 (283) = happyShift action_60-action_559 (284) = happyShift action_61-action_559 (286) = happyShift action_62-action_559 (294) = happyShift action_66-action_559 (295) = happyShift action_67-action_559 (296) = happyShift action_68-action_559 (311) = happyShift action_69-action_559 (317) = happyShift action_70-action_559 (320) = happyShift action_71-action_559 (321) = happyShift action_158-action_559 (332) = happyShift action_72-action_559 (334) = happyShift action_73-action_559 (336) = happyShift action_107-action_559 (338) = happyShift action_75-action_559 (340) = happyShift action_76-action_559 (345) = happyShift action_77-action_559 (346) = happyShift action_78-action_559 (347) = happyShift action_79-action_559 (350) = happyShift action_80-action_559 (351) = happyShift action_81-action_559 (354) = happyShift action_82-action_559 (355) = happyShift action_83-action_559 (356) = happyShift action_84-action_559 (357) = happyShift action_85-action_559 (358) = happyShift action_86-action_559 (359) = happyShift action_87-action_559 (360) = happyShift action_88-action_559 (361) = happyShift action_89-action_559 (362) = happyShift action_90-action_559 (363) = happyShift action_91-action_559 (364) = happyShift action_92-action_559 (365) = happyShift action_93-action_559 (366) = happyShift action_94-action_559 (371) = happyShift action_95-action_559 (372) = happyShift action_96-action_559 (373) = happyShift action_97-action_559 (374) = happyShift action_98-action_559 (376) = happyShift action_99-action_559 (377) = happyShift action_100-action_559 (378) = happyShift action_101-action_559 (379) = happyShift action_102-action_559 (380) = happyShift action_103-action_559 (38) = happyGoto action_13-action_559 (142) = happyGoto action_16-action_559 (143) = happyGoto action_152-action_559 (144) = happyGoto action_105-action_559 (145) = happyGoto action_18-action_559 (147) = happyGoto action_19-action_559 (148) = happyGoto action_20-action_559 (149) = happyGoto action_21-action_559 (150) = happyGoto action_22-action_559 (151) = happyGoto action_23-action_559 (152) = happyGoto action_24-action_559 (168) = happyGoto action_758-action_559 (169) = happyGoto action_477-action_559 (178) = happyGoto action_153-action_559 (186) = happyGoto action_478-action_559 (192) = happyGoto action_25-action_559 (195) = happyGoto action_26-action_559 (198) = happyGoto action_27-action_559 (219) = happyGoto action_29-action_559 (220) = happyGoto action_30-action_559 (221) = happyGoto action_106-action_559 (227) = happyGoto action_32-action_559 (229) = happyGoto action_33-action_559 (230) = happyGoto action_34-action_559 (233) = happyGoto action_35-action_559 _ = happyFail--action_560 (245) = happyShift action_37-action_560 (253) = happyShift action_40-action_560 (265) = happyShift action_46-action_560 (272) = happyShift action_49-action_560 (273) = happyShift action_50-action_560 (274) = happyShift action_51-action_560 (275) = happyShift action_180-action_560 (276) = happyShift action_181-action_560 (277) = happyShift action_182-action_560 (280) = happyShift action_57-action_560 (281) = happyShift action_58-action_560 (282) = happyShift action_59-action_560 (283) = happyShift action_60-action_560 (286) = happyShift action_62-action_560 (299) = happyShift action_183-action_560 (300) = happyShift action_184-action_560 (321) = happyShift action_185-action_560 (328) = happyShift action_186-action_560 (332) = happyShift action_187-action_560 (334) = happyShift action_188-action_560 (336) = happyShift action_189-action_560 (338) = happyShift action_190-action_560 (345) = happyShift action_191-action_560 (346) = happyShift action_192-action_560 (347) = happyShift action_193-action_560 (351) = happyShift action_194-action_560 (355) = happyShift action_195-action_560 (358) = happyShift action_196-action_560 (359) = happyShift action_197-action_560 (376) = happyShift action_198-action_560 (377) = happyShift action_199-action_560 (379) = happyShift action_102-action_560 (380) = happyShift action_103-action_560 (100) = happyGoto action_164-action_560 (104) = happyGoto action_757-action_560 (106) = happyGoto action_346-action_560 (107) = happyGoto action_169-action_560 (142) = happyGoto action_170-action_560 (202) = happyGoto action_172-action_560 (203) = happyGoto action_173-action_560 (205) = happyGoto action_174-action_560 (206) = happyGoto action_175-action_560 (215) = happyGoto action_176-action_560 (217) = happyGoto action_177-action_560 (227) = happyGoto action_178-action_560 _ = happyFail--action_561 (268) = happyShift action_756-action_561 (66) = happyGoto action_755-action_561 _ = happyReduce_150--action_562 (115) = happyGoto action_752-action_562 (116) = happyGoto action_753-action_562 (117) = happyGoto action_754-action_562 _ = happyReduce_299--action_563 (309) = happyShift action_746-action_563 (59) = happyGoto action_751-action_563 _ = happyReduce_132--action_564 (337) = happyShift action_750-action_564 _ = happyFail--action_565 _ = happyReduce_286--action_566 _ = happyReduce_139--action_567 _ = happyReduce_120--action_568 (328) = happyShift action_748-action_568 (330) = happyShift action_749-action_568 (69) = happyGoto action_747-action_568 _ = happyFail--action_569 (309) = happyShift action_746-action_569 (59) = happyGoto action_745-action_569 _ = happyReduce_132--action_570 (310) = happyShift action_744-action_570 _ = happyFail--action_571 (245) = happyShift action_37-action_571 (253) = happyShift action_40-action_571 (265) = happyShift action_46-action_571 (272) = happyShift action_49-action_571 (273) = happyShift action_50-action_571 (274) = happyShift action_51-action_571 (275) = happyShift action_180-action_571 (276) = happyShift action_181-action_571 (277) = happyShift action_182-action_571 (280) = happyShift action_57-action_571 (281) = happyShift action_58-action_571 (282) = happyShift action_59-action_571 (283) = happyShift action_60-action_571 (286) = happyShift action_62-action_571 (299) = happyShift action_183-action_571 (300) = happyShift action_184-action_571 (321) = happyShift action_185-action_571 (328) = happyShift action_186-action_571 (332) = happyShift action_187-action_571 (334) = happyShift action_188-action_571 (336) = happyShift action_189-action_571 (338) = happyShift action_190-action_571 (345) = happyShift action_191-action_571 (346) = happyShift action_192-action_571 (347) = happyShift action_193-action_571 (351) = happyShift action_194-action_571 (355) = happyShift action_195-action_571 (358) = happyShift action_196-action_571 (359) = happyShift action_197-action_571 (376) = happyShift action_198-action_571 (377) = happyShift action_199-action_571 (379) = happyShift action_102-action_571 (380) = happyShift action_103-action_571 (100) = happyGoto action_164-action_571 (106) = happyGoto action_743-action_571 (107) = happyGoto action_169-action_571 (142) = happyGoto action_170-action_571 (202) = happyGoto action_172-action_571 (203) = happyGoto action_173-action_571 (205) = happyGoto action_174-action_571 (206) = happyGoto action_175-action_571 (215) = happyGoto action_176-action_571 (217) = happyGoto action_177-action_571 (227) = happyGoto action_178-action_571 _ = happyFail--action_572 (245) = happyShift action_37-action_572 (253) = happyShift action_40-action_572 (265) = happyShift action_46-action_572 (270) = happyShift action_465-action_572 (272) = happyShift action_49-action_572 (273) = happyShift action_50-action_572 (274) = happyShift action_51-action_572 (275) = happyShift action_180-action_572 (276) = happyShift action_181-action_572 (277) = happyShift action_182-action_572 (280) = happyShift action_57-action_572 (281) = happyShift action_58-action_572 (282) = happyShift action_59-action_572 (283) = happyShift action_60-action_572 (286) = happyShift action_62-action_572 (299) = happyShift action_183-action_572 (300) = happyShift action_184-action_572 (321) = happyShift action_185-action_572 (328) = happyShift action_186-action_572 (332) = happyShift action_187-action_572 (334) = happyShift action_188-action_572 (336) = happyShift action_189-action_572 (338) = happyShift action_190-action_572 (345) = happyShift action_191-action_572 (346) = happyShift action_192-action_572 (347) = happyShift action_193-action_572 (351) = happyShift action_194-action_572 (355) = happyShift action_195-action_572 (356) = happyShift action_84-action_572 (358) = happyShift action_196-action_572 (359) = happyShift action_197-action_572 (376) = happyShift action_198-action_572 (377) = happyShift action_199-action_572 (379) = happyShift action_102-action_572 (380) = happyShift action_103-action_572 (100) = happyGoto action_164-action_572 (102) = happyGoto action_742-action_572 (103) = happyGoto action_461-action_572 (105) = happyGoto action_462-action_572 (106) = happyGoto action_463-action_572 (107) = happyGoto action_169-action_572 (142) = happyGoto action_170-action_572 (192) = happyGoto action_464-action_572 (202) = happyGoto action_172-action_572 (203) = happyGoto action_173-action_572 (205) = happyGoto action_174-action_572 (206) = happyGoto action_175-action_572 (215) = happyGoto action_176-action_572 (217) = happyGoto action_177-action_572 (227) = happyGoto action_178-action_572 _ = happyFail--action_573 (245) = happyShift action_37-action_573 (253) = happyShift action_40-action_573 (265) = happyShift action_46-action_573 (270) = happyShift action_48-action_573 (272) = happyShift action_49-action_573 (273) = happyShift action_50-action_573 (274) = happyShift action_51-action_573 (275) = happyShift action_52-action_573 (276) = happyShift action_53-action_573 (277) = happyShift action_54-action_573 (279) = happyShift action_56-action_573 (280) = happyShift action_57-action_573 (281) = happyShift action_58-action_573 (282) = happyShift action_59-action_573 (283) = happyShift action_60-action_573 (286) = happyShift action_62-action_573 (336) = happyShift action_473-action_573 (346) = happyShift action_78-action_573 (358) = happyShift action_740-action_573 (92) = happyGoto action_741-action_573 (218) = happyGoto action_736-action_573 (221) = happyGoto action_327-action_573 (227) = happyGoto action_32-action_573 _ = happyFail--action_574 _ = happyReduce_207--action_575 _ = happyReduce_208--action_576 _ = happyReduce_209--action_577 _ = happyReduce_210--action_578 (245) = happyShift action_37-action_578 (253) = happyShift action_40-action_578 (265) = happyShift action_46-action_578 (270) = happyShift action_48-action_578 (272) = happyShift action_49-action_578 (273) = happyShift action_50-action_578 (274) = happyShift action_51-action_578 (275) = happyShift action_737-action_578 (276) = happyShift action_738-action_578 (277) = happyShift action_739-action_578 (279) = happyShift action_56-action_578 (280) = happyShift action_57-action_578 (281) = happyShift action_58-action_578 (282) = happyShift action_59-action_578 (283) = happyShift action_60-action_578 (286) = happyShift action_62-action_578 (336) = happyShift action_473-action_578 (346) = happyShift action_78-action_578 (358) = happyShift action_740-action_578 (91) = happyGoto action_734-action_578 (92) = happyGoto action_735-action_578 (218) = happyGoto action_736-action_578 (221) = happyGoto action_327-action_578 (227) = happyGoto action_32-action_578 _ = happyFail--action_579 (270) = happyShift action_733-action_579 (79) = happyGoto action_732-action_579 _ = happyReduce_182--action_580 _ = happyReduce_102--action_581 (358) = happyShift action_341-action_581 (76) = happyGoto action_731-action_581 _ = happyReduce_173--action_582 _ = happyReduce_196--action_583 (358) = happyShift action_730-action_583 (87) = happyGoto action_729-action_583 _ = happyFail--action_584 _ = happyReduce_197--action_585 _ = happyReduce_100--action_586 (245) = happyShift action_37-action_586 (253) = happyShift action_40-action_586 (265) = happyShift action_46-action_586 (270) = happyShift action_48-action_586 (272) = happyShift action_49-action_586 (273) = happyShift action_50-action_586 (274) = happyShift action_51-action_586 (275) = happyShift action_52-action_586 (276) = happyShift action_53-action_586 (277) = happyShift action_54-action_586 (279) = happyShift action_56-action_586 (280) = happyShift action_57-action_586 (281) = happyShift action_58-action_586 (282) = happyShift action_59-action_586 (283) = happyShift action_60-action_586 (286) = happyShift action_62-action_586 (332) = happyShift action_217-action_586 (336) = happyShift action_331-action_586 (338) = happyShift action_219-action_586 (346) = happyShift action_78-action_586 (347) = happyShift action_79-action_586 (85) = happyGoto action_728-action_586 (193) = happyGoto action_338-action_586 (194) = happyGoto action_335-action_586 (196) = happyGoto action_324-action_586 (198) = happyGoto action_325-action_586 (218) = happyGoto action_326-action_586 (221) = happyGoto action_327-action_586 (227) = happyGoto action_32-action_586 (230) = happyGoto action_328-action_586 _ = happyReduce_193--action_587 (245) = happyShift action_37-action_587 (253) = happyShift action_40-action_587 (265) = happyShift action_46-action_587 (270) = happyShift action_48-action_587 (272) = happyShift action_49-action_587 (273) = happyShift action_50-action_587 (274) = happyShift action_51-action_587 (275) = happyShift action_52-action_587 (276) = happyShift action_53-action_587 (277) = happyShift action_54-action_587 (279) = happyShift action_56-action_587 (280) = happyShift action_57-action_587 (281) = happyShift action_58-action_587 (282) = happyShift action_59-action_587 (283) = happyShift action_60-action_587 (286) = happyShift action_62-action_587 (332) = happyShift action_217-action_587 (336) = happyShift action_331-action_587 (338) = happyShift action_219-action_587 (346) = happyShift action_78-action_587 (347) = happyShift action_79-action_587 (193) = happyGoto action_727-action_587 (194) = happyGoto action_335-action_587 (196) = happyGoto action_324-action_587 (198) = happyGoto action_325-action_587 (218) = happyGoto action_326-action_587 (221) = happyGoto action_327-action_587 (227) = happyGoto action_32-action_587 (230) = happyGoto action_328-action_587 _ = happyFail--action_588 _ = happyReduce_191--action_589 _ = happyReduce_101--action_590 (245) = happyShift action_37-action_590 (253) = happyShift action_40-action_590 (265) = happyShift action_46-action_590 (270) = happyShift action_48-action_590 (272) = happyShift action_49-action_590 (273) = happyShift action_50-action_590 (274) = happyShift action_51-action_590 (275) = happyShift action_52-action_590 (276) = happyShift action_53-action_590 (277) = happyShift action_54-action_590 (279) = happyShift action_56-action_590 (280) = happyShift action_57-action_590 (281) = happyShift action_58-action_590 (282) = happyShift action_59-action_590 (283) = happyShift action_60-action_590 (286) = happyShift action_62-action_590 (332) = happyShift action_217-action_590 (336) = happyShift action_331-action_590 (338) = happyShift action_219-action_590 (346) = happyShift action_78-action_590 (347) = happyShift action_79-action_590 (83) = happyGoto action_726-action_590 (193) = happyGoto action_334-action_590 (194) = happyGoto action_335-action_590 (196) = happyGoto action_324-action_590 (198) = happyGoto action_325-action_590 (218) = happyGoto action_326-action_590 (221) = happyGoto action_327-action_590 (227) = happyGoto action_32-action_590 (230) = happyGoto action_328-action_590 _ = happyReduce_188--action_591 (337) = happyShift action_725-action_591 _ = happyFail--action_592 (337) = happyShift action_724-action_592 _ = happyFail--action_593 (244) = happyShift action_36-action_593 (245) = happyShift action_37-action_593 (253) = happyShift action_40-action_593 (265) = happyShift action_46-action_593 (270) = happyShift action_48-action_593 (272) = happyShift action_49-action_593 (273) = happyShift action_50-action_593 (274) = happyShift action_51-action_593 (275) = happyShift action_52-action_593 (276) = happyShift action_53-action_593 (277) = happyShift action_54-action_593 (279) = happyShift action_56-action_593 (280) = happyShift action_57-action_593 (281) = happyShift action_58-action_593 (282) = happyShift action_59-action_593 (283) = happyShift action_60-action_593 (286) = happyShift action_62-action_593 (317) = happyShift action_70-action_593 (332) = happyShift action_72-action_593 (334) = happyShift action_73-action_593 (336) = happyShift action_107-action_593 (338) = happyShift action_75-action_593 (340) = happyShift action_76-action_593 (345) = happyShift action_77-action_593 (346) = happyShift action_78-action_593 (347) = happyShift action_79-action_593 (350) = happyShift action_80-action_593 (351) = happyShift action_81-action_593 (354) = happyShift action_82-action_593 (355) = happyShift action_83-action_593 (356) = happyShift action_84-action_593 (357) = happyShift action_85-action_593 (358) = happyShift action_86-action_593 (359) = happyShift action_87-action_593 (360) = happyShift action_88-action_593 (361) = happyShift action_89-action_593 (362) = happyShift action_90-action_593 (363) = happyShift action_91-action_593 (364) = happyShift action_92-action_593 (365) = happyShift action_93-action_593 (366) = happyShift action_94-action_593 (371) = happyShift action_95-action_593 (372) = happyShift action_96-action_593 (373) = happyShift action_97-action_593 (374) = happyShift action_98-action_593 (376) = happyShift action_99-action_593 (377) = happyShift action_100-action_593 (378) = happyShift action_101-action_593 (379) = happyShift action_102-action_593 (380) = happyShift action_103-action_593 (38) = happyGoto action_13-action_593 (142) = happyGoto action_16-action_593 (150) = happyGoto action_723-action_593 (151) = happyGoto action_23-action_593 (152) = happyGoto action_24-action_593 (192) = happyGoto action_25-action_593 (195) = happyGoto action_26-action_593 (198) = happyGoto action_27-action_593 (219) = happyGoto action_29-action_593 (220) = happyGoto action_30-action_593 (221) = happyGoto action_106-action_593 (227) = happyGoto action_32-action_593 (229) = happyGoto action_33-action_593 (230) = happyGoto action_34-action_593 (233) = happyGoto action_35-action_593 _ = happyFail--action_594 (306) = happyShift action_722-action_594 _ = happyFail--action_595 (306) = happyShift action_721-action_595 _ = happyFail--action_596 (306) = happyShift action_719-action_596 (310) = happyShift action_720-action_596 _ = happyFail--action_597 (306) = happyShift action_718-action_597 _ = happyFail--action_598 (244) = happyShift action_36-action_598 (245) = happyShift action_37-action_598 (246) = happyShift action_38-action_598 (251) = happyShift action_39-action_598 (253) = happyShift action_40-action_598 (254) = happyShift action_41-action_598 (261) = happyShift action_45-action_598 (265) = happyShift action_46-action_598 (269) = happyShift action_47-action_598 (270) = happyShift action_48-action_598 (272) = happyShift action_49-action_598 (273) = happyShift action_50-action_598 (274) = happyShift action_51-action_598 (275) = happyShift action_52-action_598 (276) = happyShift action_53-action_598 (277) = happyShift action_54-action_598 (278) = happyShift action_55-action_598 (279) = happyShift action_56-action_598 (280) = happyShift action_57-action_598 (281) = happyShift action_58-action_598 (282) = happyShift action_59-action_598 (283) = happyShift action_60-action_598 (284) = happyShift action_61-action_598 (286) = happyShift action_62-action_598 (294) = happyShift action_66-action_598 (295) = happyShift action_67-action_598 (296) = happyShift action_68-action_598 (311) = happyShift action_69-action_598 (317) = happyShift action_70-action_598 (320) = happyShift action_71-action_598 (332) = happyShift action_72-action_598 (334) = happyShift action_73-action_598 (336) = happyShift action_107-action_598 (338) = happyShift action_75-action_598 (340) = happyShift action_76-action_598 (345) = happyShift action_77-action_598 (346) = happyShift action_78-action_598 (347) = happyShift action_79-action_598 (350) = happyShift action_80-action_598 (351) = happyShift action_81-action_598 (354) = happyShift action_82-action_598 (355) = happyShift action_83-action_598 (356) = happyShift action_84-action_598 (357) = happyShift action_85-action_598 (358) = happyShift action_86-action_598 (359) = happyShift action_87-action_598 (360) = happyShift action_88-action_598 (361) = happyShift action_89-action_598 (362) = happyShift action_90-action_598 (363) = happyShift action_91-action_598 (364) = happyShift action_92-action_598 (365) = happyShift action_93-action_598 (366) = happyShift action_94-action_598 (371) = happyShift action_95-action_598 (372) = happyShift action_96-action_598 (373) = happyShift action_97-action_598 (374) = happyShift action_98-action_598 (376) = happyShift action_99-action_598 (377) = happyShift action_100-action_598 (378) = happyShift action_101-action_598 (379) = happyShift action_102-action_598 (380) = happyShift action_103-action_598 (38) = happyGoto action_13-action_598 (142) = happyGoto action_16-action_598 (143) = happyGoto action_717-action_598 (144) = happyGoto action_105-action_598 (145) = happyGoto action_18-action_598 (147) = happyGoto action_19-action_598 (148) = happyGoto action_20-action_598 (149) = happyGoto action_21-action_598 (150) = happyGoto action_22-action_598 (151) = happyGoto action_23-action_598 (152) = happyGoto action_24-action_598 (192) = happyGoto action_25-action_598 (195) = happyGoto action_26-action_598 (198) = happyGoto action_27-action_598 (219) = happyGoto action_29-action_598 (220) = happyGoto action_30-action_598 (221) = happyGoto action_106-action_598 (227) = happyGoto action_32-action_598 (229) = happyGoto action_33-action_598 (230) = happyGoto action_34-action_598 (233) = happyGoto action_35-action_598 _ = happyFail--action_599 (306) = happyShift action_715-action_599 (310) = happyShift action_716-action_599 _ = happyFail--action_600 (306) = happyShift action_714-action_600 _ = happyFail--action_601 _ = happyReduce_103--action_602 _ = happyReduce_105--action_603 _ = happyReduce_347--action_604 _ = happyReduce_70--action_605 (265) = happyShift action_713-action_605 (44) = happyGoto action_712-action_605 _ = happyReduce_77--action_606 _ = happyReduce_72--action_607 _ = happyReduce_500--action_608 (1) = happyShift action_664-action_608 (331) = happyShift action_665-action_608 (342) = happyShift action_708-action_608 (234) = happyGoto action_711-action_608 _ = happyFail--action_609 _ = happyReduce_163--action_610 (1) = happyShift action_664-action_610 (331) = happyShift action_665-action_610 (342) = happyShift action_706-action_610 (234) = happyGoto action_710-action_610 _ = happyFail--action_611 _ = happyReduce_512--action_612 (310) = happyShift action_709-action_612 _ = happyReduce_399--action_613 (329) = happyShift action_707-action_613 (342) = happyShift action_708-action_613 _ = happyFail--action_614 (329) = happyShift action_705-action_614 (342) = happyShift action_706-action_614 _ = happyFail--action_615 (1) = happyShift action_664-action_615 (331) = happyShift action_665-action_615 (234) = happyGoto action_704-action_615 _ = happyFail--action_616 (342) = happyShift action_703-action_616 (183) = happyGoto action_702-action_616 _ = happyReduce_495--action_617 (244) = happyShift action_36-action_617 (245) = happyShift action_37-action_617 (246) = happyShift action_38-action_617 (251) = happyShift action_39-action_617 (253) = happyShift action_40-action_617 (254) = happyShift action_41-action_617 (261) = happyShift action_156-action_617 (265) = happyShift action_46-action_617 (269) = happyShift action_47-action_617 (270) = happyShift action_48-action_617 (272) = happyShift action_49-action_617 (273) = happyShift action_50-action_617 (274) = happyShift action_51-action_617 (275) = happyShift action_52-action_617 (276) = happyShift action_53-action_617 (277) = happyShift action_54-action_617 (278) = happyShift action_55-action_617 (279) = happyShift action_56-action_617 (280) = happyShift action_57-action_617 (281) = happyShift action_58-action_617 (282) = happyShift action_59-action_617 (283) = happyShift action_60-action_617 (284) = happyShift action_61-action_617 (285) = happyShift action_157-action_617 (286) = happyShift action_62-action_617 (294) = happyShift action_66-action_617 (295) = happyShift action_67-action_617 (296) = happyShift action_68-action_617 (311) = happyShift action_69-action_617 (317) = happyShift action_70-action_617 (320) = happyShift action_71-action_617 (321) = happyShift action_158-action_617 (332) = happyShift action_72-action_617 (334) = happyShift action_73-action_617 (336) = happyShift action_107-action_617 (338) = happyShift action_75-action_617 (340) = happyShift action_76-action_617 (342) = happyShift action_617-action_617 (345) = happyShift action_77-action_617 (346) = happyShift action_78-action_617 (347) = happyShift action_79-action_617 (350) = happyShift action_80-action_617 (351) = happyShift action_81-action_617 (354) = happyShift action_82-action_617 (355) = happyShift action_83-action_617 (356) = happyShift action_84-action_617 (357) = happyShift action_85-action_617 (358) = happyShift action_86-action_617 (359) = happyShift action_87-action_617 (360) = happyShift action_88-action_617 (361) = happyShift action_89-action_617 (362) = happyShift action_90-action_617 (363) = happyShift action_91-action_617 (364) = happyShift action_92-action_617 (365) = happyShift action_93-action_617 (366) = happyShift action_94-action_617 (371) = happyShift action_95-action_617 (372) = happyShift action_96-action_617 (373) = happyShift action_97-action_617 (374) = happyShift action_98-action_617 (376) = happyShift action_99-action_617 (377) = happyShift action_100-action_617 (378) = happyShift action_101-action_617 (379) = happyShift action_102-action_617 (380) = happyShift action_103-action_617 (38) = happyGoto action_13-action_617 (142) = happyGoto action_16-action_617 (143) = happyGoto action_152-action_617 (144) = happyGoto action_105-action_617 (145) = happyGoto action_18-action_617 (147) = happyGoto action_19-action_617 (148) = happyGoto action_20-action_617 (149) = happyGoto action_21-action_617 (150) = happyGoto action_22-action_617 (151) = happyGoto action_23-action_617 (152) = happyGoto action_24-action_617 (178) = happyGoto action_153-action_617 (182) = happyGoto action_701-action_617 (185) = happyGoto action_616-action_617 (186) = happyGoto action_155-action_617 (192) = happyGoto action_25-action_617 (195) = happyGoto action_26-action_617 (198) = happyGoto action_27-action_617 (219) = happyGoto action_29-action_617 (220) = happyGoto action_30-action_617 (221) = happyGoto action_106-action_617 (227) = happyGoto action_32-action_617 (229) = happyGoto action_33-action_617 (230) = happyGoto action_34-action_617 (233) = happyGoto action_35-action_617 _ = happyReduce_493--action_618 (329) = happyShift action_700-action_618 _ = happyFail--action_619 (297) = happyShift action_673-action_619 (298) = happyShift action_674-action_619 (21) = happyGoto action_699-action_619 _ = happyReduce_26--action_620 (255) = happyShift action_151-action_620 (40) = happyGoto action_670-action_620 _ = happyReduce_66--action_621 _ = happyReduce_232--action_622 (245) = happyShift action_37-action_622 (253) = happyShift action_40-action_622 (265) = happyShift action_46-action_622 (272) = happyShift action_49-action_622 (273) = happyShift action_50-action_622 (274) = happyShift action_51-action_622 (275) = happyShift action_180-action_622 (276) = happyShift action_181-action_622 (277) = happyShift action_182-action_622 (280) = happyShift action_57-action_622 (281) = happyShift action_58-action_622 (282) = happyShift action_59-action_622 (283) = happyShift action_60-action_622 (286) = happyShift action_62-action_622 (299) = happyShift action_183-action_622 (300) = happyShift action_184-action_622 (321) = happyShift action_185-action_622 (328) = happyShift action_186-action_622 (332) = happyShift action_187-action_622 (334) = happyShift action_188-action_622 (336) = happyShift action_189-action_622 (338) = happyShift action_190-action_622 (345) = happyShift action_191-action_622 (346) = happyShift action_192-action_622 (347) = happyShift action_193-action_622 (351) = happyShift action_194-action_622 (355) = happyShift action_195-action_622 (358) = happyShift action_196-action_622 (359) = happyShift action_197-action_622 (376) = happyShift action_198-action_622 (377) = happyShift action_199-action_622 (379) = happyShift action_102-action_622 (380) = happyShift action_103-action_622 (100) = happyGoto action_164-action_622 (104) = happyGoto action_698-action_622 (106) = happyGoto action_346-action_622 (107) = happyGoto action_169-action_622 (142) = happyGoto action_170-action_622 (202) = happyGoto action_172-action_622 (203) = happyGoto action_173-action_622 (205) = happyGoto action_174-action_622 (206) = happyGoto action_175-action_622 (215) = happyGoto action_176-action_622 (217) = happyGoto action_177-action_622 (227) = happyGoto action_178-action_622 _ = happyFail--action_623 (245) = happyShift action_37-action_623 (253) = happyShift action_40-action_623 (265) = happyShift action_46-action_623 (272) = happyShift action_49-action_623 (273) = happyShift action_50-action_623 (274) = happyShift action_51-action_623 (275) = happyShift action_180-action_623 (276) = happyShift action_181-action_623 (277) = happyShift action_182-action_623 (280) = happyShift action_57-action_623 (281) = happyShift action_58-action_623 (282) = happyShift action_59-action_623 (283) = happyShift action_60-action_623 (286) = happyShift action_62-action_623 (299) = happyShift action_183-action_623 (300) = happyShift action_184-action_623 (321) = happyShift action_185-action_623 (328) = happyShift action_186-action_623 (332) = happyShift action_187-action_623 (334) = happyShift action_188-action_623 (336) = happyShift action_189-action_623 (338) = happyShift action_190-action_623 (345) = happyShift action_191-action_623 (346) = happyShift action_192-action_623 (347) = happyShift action_193-action_623 (351) = happyShift action_194-action_623 (355) = happyShift action_195-action_623 (358) = happyShift action_196-action_623 (359) = happyShift action_197-action_623 (376) = happyShift action_198-action_623 (377) = happyShift action_199-action_623 (379) = happyShift action_102-action_623 (380) = happyShift action_103-action_623 (100) = happyGoto action_164-action_623 (104) = happyGoto action_697-action_623 (106) = happyGoto action_346-action_623 (107) = happyGoto action_169-action_623 (142) = happyGoto action_170-action_623 (202) = happyGoto action_172-action_623 (203) = happyGoto action_173-action_623 (205) = happyGoto action_174-action_623 (206) = happyGoto action_175-action_623 (215) = happyGoto action_176-action_623 (217) = happyGoto action_177-action_623 (227) = happyGoto action_178-action_623 _ = happyFail--action_624 (245) = happyShift action_37-action_624 (253) = happyShift action_40-action_624 (265) = happyShift action_46-action_624 (270) = happyShift action_48-action_624 (272) = happyShift action_49-action_624 (273) = happyShift action_50-action_624 (274) = happyShift action_51-action_624 (275) = happyShift action_52-action_624 (276) = happyShift action_53-action_624 (277) = happyShift action_54-action_624 (279) = happyShift action_56-action_624 (280) = happyShift action_57-action_624 (281) = happyShift action_58-action_624 (282) = happyShift action_59-action_624 (283) = happyShift action_60-action_624 (286) = happyShift action_62-action_624 (346) = happyShift action_78-action_624 (347) = happyShift action_79-action_624 (351) = happyShift action_81-action_624 (355) = happyShift action_83-action_624 (221) = happyGoto action_696-action_624 (227) = happyGoto action_32-action_624 (229) = happyGoto action_241-action_624 (230) = happyGoto action_34-action_624 _ = happyFail--action_625 (344) = happyShift action_695-action_625 _ = happyFail--action_626 (344) = happyShift action_694-action_626 _ = happyFail--action_627 (245) = happyShift action_37-action_627 (253) = happyShift action_40-action_627 (265) = happyShift action_46-action_627 (272) = happyShift action_49-action_627 (273) = happyShift action_50-action_627 (274) = happyShift action_51-action_627 (275) = happyShift action_180-action_627 (276) = happyShift action_181-action_627 (277) = happyShift action_182-action_627 (280) = happyShift action_57-action_627 (281) = happyShift action_58-action_627 (282) = happyShift action_59-action_627 (283) = happyShift action_60-action_627 (286) = happyShift action_62-action_627 (299) = happyShift action_183-action_627 (300) = happyShift action_184-action_627 (319) = happyReduce_239-action_627 (321) = happyShift action_185-action_627 (328) = happyShift action_186-action_627 (332) = happyShift action_187-action_627 (334) = happyShift action_188-action_627 (336) = happyShift action_189-action_627 (338) = happyShift action_190-action_627 (345) = happyShift action_191-action_627 (346) = happyShift action_192-action_627 (347) = happyShift action_193-action_627 (351) = happyShift action_194-action_627 (355) = happyShift action_195-action_627 (358) = happyShift action_196-action_627 (359) = happyShift action_197-action_627 (376) = happyShift action_198-action_627 (377) = happyShift action_199-action_627 (379) = happyShift action_102-action_627 (380) = happyShift action_103-action_627 (100) = happyGoto action_164-action_627 (107) = happyGoto action_289-action_627 (142) = happyGoto action_170-action_627 (202) = happyGoto action_172-action_627 (203) = happyGoto action_173-action_627 (205) = happyGoto action_174-action_627 (206) = happyGoto action_175-action_627 (215) = happyGoto action_176-action_627 (217) = happyGoto action_177-action_627 (227) = happyGoto action_178-action_627 _ = happyReduce_245--action_628 _ = happyReduce_244--action_629 _ = happyReduce_243--action_630 _ = happyReduce_242--action_631 _ = happyReduce_233--action_632 (309) = happyShift action_693-action_632 _ = happyFail--action_633 _ = happyReduce_290--action_634 (245) = happyShift action_37-action_634 (253) = happyShift action_40-action_634 (265) = happyShift action_46-action_634 (270) = happyShift action_179-action_634 (272) = happyShift action_49-action_634 (273) = happyShift action_50-action_634 (274) = happyShift action_51-action_634 (275) = happyShift action_180-action_634 (276) = happyShift action_181-action_634 (277) = happyShift action_182-action_634 (280) = happyShift action_57-action_634 (281) = happyShift action_58-action_634 (282) = happyShift action_59-action_634 (283) = happyShift action_60-action_634 (286) = happyShift action_62-action_634 (299) = happyShift action_183-action_634 (300) = happyShift action_184-action_634 (321) = happyShift action_185-action_634 (328) = happyShift action_186-action_634 (332) = happyShift action_187-action_634 (334) = happyShift action_188-action_634 (336) = happyShift action_189-action_634 (338) = happyShift action_190-action_634 (345) = happyShift action_191-action_634 (346) = happyShift action_192-action_634 (347) = happyShift action_193-action_634 (351) = happyShift action_194-action_634 (355) = happyShift action_195-action_634 (356) = happyShift action_84-action_634 (358) = happyShift action_196-action_634 (359) = happyShift action_197-action_634 (376) = happyShift action_198-action_634 (377) = happyShift action_199-action_634 (379) = happyShift action_102-action_634 (380) = happyShift action_103-action_634 (100) = happyGoto action_164-action_634 (101) = happyGoto action_692-action_634 (103) = happyGoto action_166-action_634 (104) = happyGoto action_167-action_634 (106) = happyGoto action_168-action_634 (107) = happyGoto action_169-action_634 (142) = happyGoto action_170-action_634 (192) = happyGoto action_171-action_634 (202) = happyGoto action_172-action_634 (203) = happyGoto action_173-action_634 (205) = happyGoto action_174-action_634 (206) = happyGoto action_175-action_634 (215) = happyGoto action_176-action_634 (217) = happyGoto action_177-action_634 (227) = happyGoto action_178-action_634 _ = happyFail--action_635 _ = happyReduce_229--action_636 _ = happyReduce_230--action_637 (309) = happyShift action_690-action_637 (343) = happyShift action_691-action_637 _ = happyFail--action_638 (343) = happyShift action_689-action_638 _ = happyFail--action_639 _ = happyReduce_264--action_640 _ = happyReduce_269--action_641 (245) = happyShift action_37-action_641 (253) = happyShift action_40-action_641 (265) = happyShift action_46-action_641 (270) = happyShift action_179-action_641 (272) = happyShift action_49-action_641 (273) = happyShift action_50-action_641 (274) = happyShift action_51-action_641 (275) = happyShift action_180-action_641 (276) = happyShift action_181-action_641 (277) = happyShift action_182-action_641 (280) = happyShift action_57-action_641 (281) = happyShift action_58-action_641 (282) = happyShift action_59-action_641 (283) = happyShift action_60-action_641 (286) = happyShift action_62-action_641 (299) = happyShift action_183-action_641 (300) = happyShift action_184-action_641 (321) = happyShift action_185-action_641 (328) = happyShift action_186-action_641 (332) = happyShift action_187-action_641 (334) = happyShift action_188-action_641 (336) = happyShift action_189-action_641 (338) = happyShift action_190-action_641 (345) = happyShift action_191-action_641 (346) = happyShift action_192-action_641 (347) = happyShift action_193-action_641 (351) = happyShift action_194-action_641 (355) = happyShift action_195-action_641 (356) = happyShift action_84-action_641 (358) = happyShift action_196-action_641 (359) = happyShift action_197-action_641 (376) = happyShift action_198-action_641 (377) = happyShift action_199-action_641 (379) = happyShift action_102-action_641 (380) = happyShift action_103-action_641 (100) = happyGoto action_164-action_641 (101) = happyGoto action_256-action_641 (103) = happyGoto action_166-action_641 (104) = happyGoto action_167-action_641 (106) = happyGoto action_168-action_641 (107) = happyGoto action_169-action_641 (111) = happyGoto action_688-action_641 (142) = happyGoto action_170-action_641 (192) = happyGoto action_171-action_641 (202) = happyGoto action_172-action_641 (203) = happyGoto action_173-action_641 (205) = happyGoto action_174-action_641 (206) = happyGoto action_175-action_641 (215) = happyGoto action_176-action_641 (217) = happyGoto action_177-action_641 (227) = happyGoto action_178-action_641 _ = happyFail--action_642 _ = happyReduce_270--action_643 _ = happyReduce_545--action_644 _ = happyReduce_548--action_645 _ = happyReduce_542--action_646 _ = happyReduce_540--action_647 _ = happyReduce_547--action_648 (245) = happyShift action_37-action_648 (253) = happyShift action_40-action_648 (265) = happyShift action_46-action_648 (272) = happyShift action_49-action_648 (273) = happyShift action_50-action_648 (274) = happyShift action_51-action_648 (275) = happyShift action_180-action_648 (276) = happyShift action_181-action_648 (277) = happyShift action_182-action_648 (280) = happyShift action_57-action_648 (281) = happyShift action_58-action_648 (282) = happyShift action_59-action_648 (283) = happyShift action_60-action_648 (286) = happyShift action_62-action_648 (322) = happyShift action_685-action_648 (332) = happyShift action_686-action_648 (336) = happyShift action_687-action_648 (346) = happyShift action_192-action_648 (347) = happyShift action_193-action_648 (351) = happyShift action_194-action_648 (355) = happyShift action_195-action_648 (118) = happyGoto action_679-action_648 (119) = happyGoto action_680-action_648 (120) = happyGoto action_681-action_648 (121) = happyGoto action_682-action_648 (205) = happyGoto action_683-action_648 (206) = happyGoto action_175-action_648 (215) = happyGoto action_684-action_648 (217) = happyGoto action_177-action_648 (227) = happyGoto action_178-action_648 _ = happyFail--action_649 _ = happyReduce_271--action_650 (245) = happyShift action_37-action_650 (253) = happyShift action_40-action_650 (265) = happyShift action_46-action_650 (270) = happyShift action_179-action_650 (272) = happyShift action_49-action_650 (273) = happyShift action_50-action_650 (274) = happyShift action_51-action_650 (275) = happyShift action_180-action_650 (276) = happyShift action_181-action_650 (277) = happyShift action_182-action_650 (280) = happyShift action_57-action_650 (281) = happyShift action_58-action_650 (282) = happyShift action_59-action_650 (283) = happyShift action_60-action_650 (286) = happyShift action_62-action_650 (299) = happyShift action_183-action_650 (300) = happyShift action_184-action_650 (321) = happyShift action_185-action_650 (328) = happyShift action_186-action_650 (332) = happyShift action_187-action_650 (334) = happyShift action_188-action_650 (336) = happyShift action_189-action_650 (338) = happyShift action_190-action_650 (345) = happyShift action_191-action_650 (346) = happyShift action_192-action_650 (347) = happyShift action_193-action_650 (351) = happyShift action_194-action_650 (355) = happyShift action_195-action_650 (356) = happyShift action_84-action_650 (358) = happyShift action_196-action_650 (359) = happyShift action_197-action_650 (376) = happyShift action_198-action_650 (377) = happyShift action_199-action_650 (379) = happyShift action_102-action_650 (380) = happyShift action_103-action_650 (100) = happyGoto action_164-action_650 (101) = happyGoto action_256-action_650 (103) = happyGoto action_166-action_650 (104) = happyGoto action_167-action_650 (106) = happyGoto action_168-action_650 (107) = happyGoto action_169-action_650 (111) = happyGoto action_678-action_650 (142) = happyGoto action_170-action_650 (192) = happyGoto action_171-action_650 (202) = happyGoto action_172-action_650 (203) = happyGoto action_173-action_650 (205) = happyGoto action_174-action_650 (206) = happyGoto action_175-action_650 (215) = happyGoto action_176-action_650 (217) = happyGoto action_177-action_650 (227) = happyGoto action_178-action_650 _ = happyFail--action_651 _ = happyReduce_541--action_652 _ = happyReduce_268--action_653 (245) = happyShift action_37-action_653 (253) = happyShift action_40-action_653 (265) = happyShift action_46-action_653 (270) = happyShift action_179-action_653 (272) = happyShift action_49-action_653 (273) = happyShift action_50-action_653 (274) = happyShift action_51-action_653 (275) = happyShift action_180-action_653 (276) = happyShift action_181-action_653 (277) = happyShift action_182-action_653 (280) = happyShift action_57-action_653 (281) = happyShift action_58-action_653 (282) = happyShift action_59-action_653 (283) = happyShift action_60-action_653 (286) = happyShift action_62-action_653 (299) = happyShift action_183-action_653 (300) = happyShift action_184-action_653 (321) = happyShift action_185-action_653 (328) = happyShift action_186-action_653 (332) = happyShift action_187-action_653 (334) = happyShift action_188-action_653 (336) = happyShift action_189-action_653 (338) = happyShift action_190-action_653 (345) = happyShift action_191-action_653 (346) = happyShift action_192-action_653 (347) = happyShift action_193-action_653 (351) = happyShift action_194-action_653 (355) = happyShift action_195-action_653 (356) = happyShift action_84-action_653 (358) = happyShift action_196-action_653 (359) = happyShift action_197-action_653 (376) = happyShift action_198-action_653 (377) = happyShift action_199-action_653 (379) = happyShift action_102-action_653 (380) = happyShift action_103-action_653 (100) = happyGoto action_164-action_653 (101) = happyGoto action_256-action_653 (103) = happyGoto action_166-action_653 (104) = happyGoto action_167-action_653 (106) = happyGoto action_168-action_653 (107) = happyGoto action_169-action_653 (111) = happyGoto action_677-action_653 (142) = happyGoto action_170-action_653 (192) = happyGoto action_171-action_653 (202) = happyGoto action_172-action_653 (203) = happyGoto action_173-action_653 (205) = happyGoto action_174-action_653 (206) = happyGoto action_175-action_653 (215) = happyGoto action_176-action_653 (217) = happyGoto action_177-action_653 (227) = happyGoto action_178-action_653 _ = happyFail--action_654 (343) = happyShift action_676-action_654 _ = happyFail--action_655 _ = happyReduce_277--action_656 (333) = happyShift action_675-action_656 _ = happyFail--action_657 _ = happyReduce_274--action_658 _ = happyReduce_18--action_659 _ = happyReduce_584--action_660 _ = happyReduce_535--action_661 _ = happyReduce_570--action_662 (297) = happyShift action_673-action_662 (298) = happyShift action_674-action_662 (21) = happyGoto action_672-action_662 _ = happyReduce_26--action_663 _ = happyReduce_30--action_664 _ = happyReduce_636--action_665 _ = happyReduce_635--action_666 (244) = happyShift action_36-action_666 (245) = happyShift action_37-action_666 (246) = happyShift action_38-action_666 (247) = happyShift action_130-action_666 (248) = happyShift action_131-action_666 (249) = happyShift action_132-action_666 (250) = happyShift action_133-action_666 (251) = happyShift action_39-action_666 (253) = happyShift action_40-action_666 (254) = happyShift action_41-action_666 (257) = happyShift action_42-action_666 (258) = happyShift action_43-action_666 (259) = happyShift action_44-action_666 (260) = happyShift action_134-action_666 (261) = happyShift action_45-action_666 (263) = happyShift action_135-action_666 (265) = happyShift action_46-action_666 (267) = happyShift action_136-action_666 (269) = happyShift action_47-action_666 (270) = happyShift action_48-action_666 (271) = happyShift action_137-action_666 (272) = happyShift action_49-action_666 (273) = happyShift action_50-action_666 (274) = happyShift action_51-action_666 (275) = happyShift action_52-action_666 (276) = happyShift action_53-action_666 (277) = happyShift action_54-action_666 (278) = happyShift action_55-action_666 (279) = happyShift action_56-action_666 (280) = happyShift action_57-action_666 (281) = happyShift action_58-action_666 (282) = happyShift action_59-action_666 (283) = happyShift action_60-action_666 (284) = happyShift action_61-action_666 (286) = happyShift action_62-action_666 (289) = happyShift action_63-action_666 (290) = happyShift action_64-action_666 (291) = happyShift action_65-action_666 (293) = happyShift action_138-action_666 (294) = happyShift action_66-action_666 (295) = happyShift action_67-action_666 (296) = happyShift action_68-action_666 (297) = happyShift action_139-action_666 (298) = happyShift action_140-action_666 (301) = happyShift action_141-action_666 (302) = happyShift action_142-action_666 (303) = happyShift action_143-action_666 (304) = happyShift action_144-action_666 (311) = happyShift action_69-action_666 (317) = happyShift action_70-action_666 (320) = happyShift action_71-action_666 (321) = happyShift action_145-action_666 (332) = happyShift action_72-action_666 (334) = happyShift action_73-action_666 (336) = happyShift action_74-action_666 (338) = happyShift action_75-action_666 (340) = happyShift action_76-action_666 (345) = happyShift action_77-action_666 (346) = happyShift action_78-action_666 (347) = happyShift action_79-action_666 (350) = happyShift action_80-action_666 (351) = happyShift action_81-action_666 (354) = happyShift action_82-action_666 (355) = happyShift action_83-action_666 (356) = happyShift action_84-action_666 (357) = happyShift action_85-action_666 (358) = happyShift action_86-action_666 (359) = happyShift action_87-action_666 (360) = happyShift action_88-action_666 (361) = happyShift action_89-action_666 (362) = happyShift action_90-action_666 (363) = happyShift action_91-action_666 (364) = happyShift action_92-action_666 (365) = happyShift action_93-action_666 (366) = happyShift action_94-action_666 (367) = happyShift action_146-action_666 (368) = happyShift action_147-action_666 (369) = happyShift action_148-action_666 (370) = happyShift action_149-action_666 (371) = happyShift action_95-action_666 (372) = happyShift action_96-action_666 (373) = happyShift action_97-action_666 (374) = happyShift action_98-action_666 (376) = happyShift action_99-action_666 (377) = happyShift action_100-action_666 (378) = happyShift action_101-action_666 (379) = happyShift action_102-action_666 (380) = happyShift action_103-action_666 (38) = happyGoto action_13-action_666 (49) = happyGoto action_14-action_666 (52) = happyGoto action_671-action_666 (53) = happyGoto action_115-action_666 (54) = happyGoto action_116-action_666 (55) = happyGoto action_117-action_666 (58) = happyGoto action_118-action_666 (62) = happyGoto action_119-action_666 (88) = happyGoto action_120-action_666 (135) = happyGoto action_121-action_666 (136) = happyGoto action_122-action_666 (137) = happyGoto action_123-action_666 (141) = happyGoto action_124-action_666 (142) = happyGoto action_16-action_666 (144) = happyGoto action_125-action_666 (145) = happyGoto action_18-action_666 (147) = happyGoto action_19-action_666 (148) = happyGoto action_20-action_666 (149) = happyGoto action_21-action_666 (150) = happyGoto action_22-action_666 (151) = happyGoto action_23-action_666 (152) = happyGoto action_24-action_666 (192) = happyGoto action_25-action_666 (195) = happyGoto action_26-action_666 (198) = happyGoto action_27-action_666 (218) = happyGoto action_28-action_666 (219) = happyGoto action_29-action_666 (220) = happyGoto action_30-action_666 (221) = happyGoto action_31-action_666 (227) = happyGoto action_32-action_666 (229) = happyGoto action_33-action_666 (230) = happyGoto action_34-action_666 (233) = happyGoto action_35-action_666 (237) = happyGoto action_126-action_666 (238) = happyGoto action_127-action_666 (239) = happyGoto action_128-action_666 (240) = happyGoto action_129-action_666 _ = happyReduce_92--action_667 (244) = happyShift action_36-action_667 (245) = happyShift action_37-action_667 (246) = happyShift action_38-action_667 (247) = happyShift action_130-action_667 (248) = happyShift action_131-action_667 (249) = happyShift action_132-action_667 (250) = happyShift action_133-action_667 (251) = happyShift action_39-action_667 (253) = happyShift action_40-action_667 (254) = happyShift action_41-action_667 (255) = happyShift action_151-action_667 (257) = happyShift action_42-action_667 (258) = happyShift action_43-action_667 (259) = happyShift action_44-action_667 (260) = happyShift action_134-action_667 (261) = happyShift action_45-action_667 (263) = happyShift action_135-action_667 (265) = happyShift action_46-action_667 (267) = happyShift action_136-action_667 (269) = happyShift action_47-action_667 (270) = happyShift action_48-action_667 (271) = happyShift action_137-action_667 (272) = happyShift action_49-action_667 (273) = happyShift action_50-action_667 (274) = happyShift action_51-action_667 (275) = happyShift action_52-action_667 (276) = happyShift action_53-action_667 (277) = happyShift action_54-action_667 (278) = happyShift action_55-action_667 (279) = happyShift action_56-action_667 (280) = happyShift action_57-action_667 (281) = happyShift action_58-action_667 (282) = happyShift action_59-action_667 (283) = happyShift action_60-action_667 (284) = happyShift action_61-action_667 (286) = happyShift action_62-action_667 (289) = happyShift action_63-action_667 (290) = happyShift action_64-action_667 (291) = happyShift action_65-action_667 (293) = happyShift action_138-action_667 (294) = happyShift action_66-action_667 (295) = happyShift action_67-action_667 (296) = happyShift action_68-action_667 (297) = happyShift action_139-action_667 (298) = happyShift action_140-action_667 (301) = happyShift action_141-action_667 (302) = happyShift action_142-action_667 (303) = happyShift action_143-action_667 (304) = happyShift action_144-action_667 (311) = happyShift action_69-action_667 (317) = happyShift action_70-action_667 (320) = happyShift action_71-action_667 (321) = happyShift action_145-action_667 (332) = happyShift action_72-action_667 (334) = happyShift action_73-action_667 (336) = happyShift action_74-action_667 (338) = happyShift action_75-action_667 (340) = happyShift action_76-action_667 (345) = happyShift action_77-action_667 (346) = happyShift action_78-action_667 (347) = happyShift action_79-action_667 (350) = happyShift action_80-action_667 (351) = happyShift action_81-action_667 (354) = happyShift action_82-action_667 (355) = happyShift action_83-action_667 (356) = happyShift action_84-action_667 (357) = happyShift action_85-action_667 (358) = happyShift action_86-action_667 (359) = happyShift action_87-action_667 (360) = happyShift action_88-action_667 (361) = happyShift action_89-action_667 (362) = happyShift action_90-action_667 (363) = happyShift action_91-action_667 (364) = happyShift action_92-action_667 (365) = happyShift action_93-action_667 (366) = happyShift action_94-action_667 (367) = happyShift action_146-action_667 (368) = happyShift action_147-action_667 (369) = happyShift action_148-action_667 (370) = happyShift action_149-action_667 (371) = happyShift action_95-action_667 (372) = happyShift action_96-action_667 (373) = happyShift action_97-action_667 (374) = happyShift action_98-action_667 (376) = happyShift action_99-action_667 (377) = happyShift action_100-action_667 (378) = happyShift action_101-action_667 (379) = happyShift action_102-action_667 (380) = happyShift action_103-action_667 (25) = happyGoto action_669-action_667 (38) = happyGoto action_13-action_667 (40) = happyGoto action_670-action_667 (49) = happyGoto action_14-action_667 (51) = happyGoto action_236-action_667 (52) = happyGoto action_237-action_667 (53) = happyGoto action_115-action_667 (54) = happyGoto action_116-action_667 (55) = happyGoto action_117-action_667 (58) = happyGoto action_118-action_667 (62) = happyGoto action_119-action_667 (88) = happyGoto action_120-action_667 (135) = happyGoto action_121-action_667 (136) = happyGoto action_122-action_667 (137) = happyGoto action_123-action_667 (141) = happyGoto action_124-action_667 (142) = happyGoto action_16-action_667 (144) = happyGoto action_125-action_667 (145) = happyGoto action_18-action_667 (147) = happyGoto action_19-action_667 (148) = happyGoto action_20-action_667 (149) = happyGoto action_21-action_667 (150) = happyGoto action_22-action_667 (151) = happyGoto action_23-action_667 (152) = happyGoto action_24-action_667 (192) = happyGoto action_25-action_667 (195) = happyGoto action_26-action_667 (198) = happyGoto action_27-action_667 (218) = happyGoto action_28-action_667 (219) = happyGoto action_29-action_667 (220) = happyGoto action_30-action_667 (221) = happyGoto action_31-action_667 (227) = happyGoto action_32-action_667 (229) = happyGoto action_33-action_667 (230) = happyGoto action_34-action_667 (233) = happyGoto action_35-action_667 (237) = happyGoto action_126-action_667 (238) = happyGoto action_127-action_667 (239) = happyGoto action_128-action_667 (240) = happyGoto action_129-action_667 _ = happyReduce_66--action_668 _ = happyReduce_29--action_669 _ = happyReduce_32--action_670 _ = happyReduce_65--action_671 _ = happyReduce_91--action_672 (336) = happyShift action_877-action_672 (29) = happyGoto action_952-action_672 _ = happyReduce_42--action_673 (332) = happyShift action_583-action_673 (358) = happyShift action_584-action_673 (86) = happyGoto action_951-action_673 _ = happyFail--action_674 (332) = happyShift action_583-action_674 (358) = happyShift action_584-action_674 (86) = happyGoto action_950-action_674 _ = happyFail--action_675 _ = happyReduce_279--action_676 (245) = happyShift action_37-action_676 (253) = happyShift action_40-action_676 (265) = happyShift action_46-action_676 (270) = happyShift action_179-action_676 (272) = happyShift action_49-action_676 (273) = happyShift action_50-action_676 (274) = happyShift action_51-action_676 (275) = happyShift action_180-action_676 (276) = happyShift action_181-action_676 (277) = happyShift action_182-action_676 (280) = happyShift action_57-action_676 (281) = happyShift action_58-action_676 (282) = happyShift action_59-action_676 (283) = happyShift action_60-action_676 (286) = happyShift action_62-action_676 (299) = happyShift action_183-action_676 (300) = happyShift action_184-action_676 (321) = happyShift action_185-action_676 (328) = happyShift action_186-action_676 (332) = happyShift action_187-action_676 (334) = happyShift action_188-action_676 (336) = happyShift action_189-action_676 (338) = happyShift action_190-action_676 (345) = happyShift action_191-action_676 (346) = happyShift action_192-action_676 (347) = happyShift action_193-action_676 (351) = happyShift action_194-action_676 (355) = happyShift action_195-action_676 (356) = happyShift action_84-action_676 (358) = happyShift action_196-action_676 (359) = happyShift action_197-action_676 (376) = happyShift action_198-action_676 (377) = happyShift action_199-action_676 (379) = happyShift action_102-action_676 (380) = happyShift action_103-action_676 (100) = happyGoto action_164-action_676 (101) = happyGoto action_256-action_676 (103) = happyGoto action_166-action_676 (104) = happyGoto action_167-action_676 (106) = happyGoto action_168-action_676 (107) = happyGoto action_169-action_676 (111) = happyGoto action_949-action_676 (142) = happyGoto action_170-action_676 (192) = happyGoto action_171-action_676 (202) = happyGoto action_172-action_676 (203) = happyGoto action_173-action_676 (205) = happyGoto action_174-action_676 (206) = happyGoto action_175-action_676 (215) = happyGoto action_176-action_676 (217) = happyGoto action_177-action_676 (227) = happyGoto action_178-action_676 _ = happyFail--action_677 _ = happyReduce_289--action_678 (337) = happyShift action_948-action_678 _ = happyFail--action_679 (337) = happyShift action_947-action_679 _ = happyFail--action_680 (245) = happyShift action_37-action_680 (253) = happyShift action_40-action_680 (265) = happyShift action_46-action_680 (272) = happyShift action_49-action_680 (273) = happyShift action_50-action_680 (274) = happyShift action_51-action_680 (275) = happyShift action_180-action_680 (276) = happyShift action_181-action_680 (277) = happyShift action_182-action_680 (280) = happyShift action_57-action_680 (281) = happyShift action_58-action_680 (282) = happyShift action_59-action_680 (283) = happyShift action_60-action_680 (286) = happyShift action_62-action_680 (315) = happyShift action_946-action_680 (322) = happyShift action_685-action_680 (332) = happyShift action_686-action_680 (336) = happyShift action_687-action_680 (346) = happyShift action_192-action_680 (347) = happyShift action_193-action_680 (351) = happyShift action_194-action_680 (355) = happyShift action_195-action_680 (120) = happyGoto action_945-action_680 (121) = happyGoto action_682-action_680 (205) = happyGoto action_683-action_680 (206) = happyGoto action_175-action_680 (215) = happyGoto action_684-action_680 (217) = happyGoto action_177-action_680 (227) = happyGoto action_178-action_680 _ = happyReduce_301--action_681 _ = happyReduce_303--action_682 _ = happyReduce_307--action_683 _ = happyReduce_309--action_684 _ = happyReduce_308--action_685 _ = happyReduce_305--action_686 (245) = happyShift action_37-action_686 (253) = happyShift action_40-action_686 (265) = happyShift action_46-action_686 (272) = happyShift action_49-action_686 (273) = happyShift action_50-action_686 (274) = happyShift action_51-action_686 (275) = happyShift action_180-action_686 (276) = happyShift action_181-action_686 (277) = happyShift action_182-action_686 (280) = happyShift action_57-action_686 (281) = happyShift action_58-action_686 (282) = happyShift action_59-action_686 (283) = happyShift action_60-action_686 (286) = happyShift action_62-action_686 (322) = happyShift action_685-action_686 (332) = happyShift action_686-action_686 (336) = happyShift action_687-action_686 (346) = happyShift action_192-action_686 (347) = happyShift action_193-action_686 (351) = happyShift action_194-action_686 (355) = happyShift action_195-action_686 (118) = happyGoto action_944-action_686 (119) = happyGoto action_680-action_686 (120) = happyGoto action_681-action_686 (121) = happyGoto action_682-action_686 (205) = happyGoto action_683-action_686 (206) = happyGoto action_175-action_686 (215) = happyGoto action_684-action_686 (217) = happyGoto action_177-action_686 (227) = happyGoto action_178-action_686 _ = happyFail--action_687 (245) = happyShift action_37-action_687 (253) = happyShift action_40-action_687 (265) = happyShift action_46-action_687 (272) = happyShift action_49-action_687 (273) = happyShift action_50-action_687 (274) = happyShift action_51-action_687 (275) = happyShift action_180-action_687 (276) = happyShift action_181-action_687 (277) = happyShift action_182-action_687 (280) = happyShift action_57-action_687 (281) = happyShift action_58-action_687 (282) = happyShift action_59-action_687 (283) = happyShift action_60-action_687 (286) = happyShift action_62-action_687 (322) = happyShift action_685-action_687 (332) = happyShift action_686-action_687 (336) = happyShift action_687-action_687 (337) = happyShift action_943-action_687 (346) = happyShift action_192-action_687 (347) = happyShift action_193-action_687 (351) = happyShift action_194-action_687 (355) = happyShift action_195-action_687 (118) = happyGoto action_942-action_687 (119) = happyGoto action_680-action_687 (120) = happyGoto action_681-action_687 (121) = happyGoto action_682-action_687 (205) = happyGoto action_683-action_687 (206) = happyGoto action_175-action_687 (215) = happyGoto action_684-action_687 (217) = happyGoto action_177-action_687 (227) = happyGoto action_178-action_687 _ = happyFail--action_688 (333) = happyShift action_941-action_688 _ = happyFail--action_689 (368) = happyShift action_147-action_689 (238) = happyGoto action_939-action_689 (242) = happyGoto action_940-action_689 _ = happyReduce_647--action_690 (245) = happyShift action_37-action_690 (253) = happyShift action_40-action_690 (265) = happyShift action_46-action_690 (270) = happyShift action_179-action_690 (272) = happyShift action_49-action_690 (273) = happyShift action_50-action_690 (274) = happyShift action_51-action_690 (275) = happyShift action_180-action_690 (276) = happyShift action_181-action_690 (277) = happyShift action_182-action_690 (280) = happyShift action_57-action_690 (281) = happyShift action_58-action_690 (282) = happyShift action_59-action_690 (283) = happyShift action_60-action_690 (286) = happyShift action_62-action_690 (299) = happyShift action_183-action_690 (300) = happyShift action_184-action_690 (321) = happyShift action_185-action_690 (328) = happyShift action_186-action_690 (332) = happyShift action_187-action_690 (334) = happyShift action_188-action_690 (336) = happyShift action_189-action_690 (338) = happyShift action_190-action_690 (345) = happyShift action_191-action_690 (346) = happyShift action_192-action_690 (347) = happyShift action_193-action_690 (351) = happyShift action_194-action_690 (355) = happyShift action_195-action_690 (356) = happyShift action_84-action_690 (358) = happyShift action_196-action_690 (359) = happyShift action_197-action_690 (376) = happyShift action_198-action_690 (377) = happyShift action_199-action_690 (379) = happyShift action_102-action_690 (380) = happyShift action_103-action_690 (100) = happyGoto action_164-action_690 (101) = happyGoto action_938-action_690 (103) = happyGoto action_166-action_690 (104) = happyGoto action_167-action_690 (106) = happyGoto action_168-action_690 (107) = happyGoto action_169-action_690 (142) = happyGoto action_170-action_690 (192) = happyGoto action_171-action_690 (202) = happyGoto action_172-action_690 (203) = happyGoto action_173-action_690 (205) = happyGoto action_174-action_690 (206) = happyGoto action_175-action_690 (215) = happyGoto action_176-action_690 (217) = happyGoto action_177-action_690 (227) = happyGoto action_178-action_690 _ = happyFail--action_691 (245) = happyShift action_37-action_691 (253) = happyShift action_40-action_691 (265) = happyShift action_46-action_691 (270) = happyShift action_48-action_691 (272) = happyShift action_49-action_691 (273) = happyShift action_50-action_691 (274) = happyShift action_51-action_691 (275) = happyShift action_52-action_691 (276) = happyShift action_53-action_691 (277) = happyShift action_54-action_691 (279) = happyShift action_56-action_691 (280) = happyShift action_57-action_691 (281) = happyShift action_58-action_691 (282) = happyShift action_59-action_691 (283) = happyShift action_60-action_691 (286) = happyShift action_62-action_691 (336) = happyShift action_473-action_691 (346) = happyShift action_78-action_691 (218) = happyGoto action_937-action_691 (221) = happyGoto action_327-action_691 (227) = happyGoto action_32-action_691 _ = happyFail--action_692 _ = happyReduce_231--action_693 (245) = happyShift action_37-action_693 (253) = happyShift action_40-action_693 (265) = happyShift action_46-action_693 (272) = happyShift action_49-action_693 (273) = happyShift action_50-action_693 (274) = happyShift action_51-action_693 (275) = happyShift action_180-action_693 (276) = happyShift action_181-action_693 (277) = happyShift action_182-action_693 (280) = happyShift action_57-action_693 (281) = happyShift action_58-action_693 (282) = happyShift action_59-action_693 (283) = happyShift action_60-action_693 (286) = happyShift action_62-action_693 (322) = happyShift action_685-action_693 (332) = happyShift action_686-action_693 (336) = happyShift action_687-action_693 (346) = happyShift action_192-action_693 (347) = happyShift action_193-action_693 (351) = happyShift action_194-action_693 (355) = happyShift action_195-action_693 (118) = happyGoto action_936-action_693 (119) = happyGoto action_680-action_693 (120) = happyGoto action_681-action_693 (121) = happyGoto action_682-action_693 (205) = happyGoto action_683-action_693 (206) = happyGoto action_175-action_693 (215) = happyGoto action_684-action_693 (217) = happyGoto action_177-action_693 (227) = happyGoto action_178-action_693 _ = happyFail--action_694 _ = happyReduce_574--action_695 _ = happyReduce_550--action_696 (344) = happyShift action_935-action_696 _ = happyFail--action_697 _ = happyReduce_247--action_698 _ = happyReduce_246--action_699 (336) = happyShift action_877-action_699 (29) = happyGoto action_934-action_699 _ = happyReduce_42--action_700 _ = happyReduce_489--action_701 _ = happyReduce_492--action_702 _ = happyReduce_491--action_703 (244) = happyShift action_36-action_703 (245) = happyShift action_37-action_703 (246) = happyShift action_38-action_703 (251) = happyShift action_39-action_703 (253) = happyShift action_40-action_703 (254) = happyShift action_41-action_703 (261) = happyShift action_156-action_703 (265) = happyShift action_46-action_703 (269) = happyShift action_47-action_703 (270) = happyShift action_48-action_703 (272) = happyShift action_49-action_703 (273) = happyShift action_50-action_703 (274) = happyShift action_51-action_703 (275) = happyShift action_52-action_703 (276) = happyShift action_53-action_703 (277) = happyShift action_54-action_703 (278) = happyShift action_55-action_703 (279) = happyShift action_56-action_703 (280) = happyShift action_57-action_703 (281) = happyShift action_58-action_703 (282) = happyShift action_59-action_703 (283) = happyShift action_60-action_703 (284) = happyShift action_61-action_703 (285) = happyShift action_157-action_703 (286) = happyShift action_62-action_703 (294) = happyShift action_66-action_703 (295) = happyShift action_67-action_703 (296) = happyShift action_68-action_703 (311) = happyShift action_69-action_703 (317) = happyShift action_70-action_703 (320) = happyShift action_71-action_703 (321) = happyShift action_158-action_703 (332) = happyShift action_72-action_703 (334) = happyShift action_73-action_703 (336) = happyShift action_107-action_703 (338) = happyShift action_75-action_703 (340) = happyShift action_76-action_703 (342) = happyShift action_617-action_703 (345) = happyShift action_77-action_703 (346) = happyShift action_78-action_703 (347) = happyShift action_79-action_703 (350) = happyShift action_80-action_703 (351) = happyShift action_81-action_703 (354) = happyShift action_82-action_703 (355) = happyShift action_83-action_703 (356) = happyShift action_84-action_703 (357) = happyShift action_85-action_703 (358) = happyShift action_86-action_703 (359) = happyShift action_87-action_703 (360) = happyShift action_88-action_703 (361) = happyShift action_89-action_703 (362) = happyShift action_90-action_703 (363) = happyShift action_91-action_703 (364) = happyShift action_92-action_703 (365) = happyShift action_93-action_703 (366) = happyShift action_94-action_703 (371) = happyShift action_95-action_703 (372) = happyShift action_96-action_703 (373) = happyShift action_97-action_703 (374) = happyShift action_98-action_703 (376) = happyShift action_99-action_703 (377) = happyShift action_100-action_703 (378) = happyShift action_101-action_703 (379) = happyShift action_102-action_703 (380) = happyShift action_103-action_703 (38) = happyGoto action_13-action_703 (142) = happyGoto action_16-action_703 (143) = happyGoto action_152-action_703 (144) = happyGoto action_105-action_703 (145) = happyGoto action_18-action_703 (147) = happyGoto action_19-action_703 (148) = happyGoto action_20-action_703 (149) = happyGoto action_21-action_703 (150) = happyGoto action_22-action_703 (151) = happyGoto action_23-action_703 (152) = happyGoto action_24-action_703 (178) = happyGoto action_153-action_703 (182) = happyGoto action_933-action_703 (185) = happyGoto action_616-action_703 (186) = happyGoto action_155-action_703 (192) = happyGoto action_25-action_703 (195) = happyGoto action_26-action_703 (198) = happyGoto action_27-action_703 (219) = happyGoto action_29-action_703 (220) = happyGoto action_30-action_703 (221) = happyGoto action_106-action_703 (227) = happyGoto action_32-action_703 (229) = happyGoto action_33-action_703 (230) = happyGoto action_34-action_703 (233) = happyGoto action_35-action_703 _ = happyReduce_493--action_704 _ = happyReduce_490--action_705 _ = happyReduce_168--action_706 (356) = happyShift action_84-action_706 (191) = happyGoto action_931-action_706 (192) = happyGoto action_932-action_706 _ = happyReduce_511--action_707 _ = happyReduce_165--action_708 (244) = happyShift action_36-action_708 (245) = happyShift action_37-action_708 (246) = happyShift action_38-action_708 (251) = happyShift action_39-action_708 (253) = happyShift action_40-action_708 (254) = happyShift action_41-action_708 (257) = happyShift action_42-action_708 (258) = happyShift action_43-action_708 (259) = happyShift action_44-action_708 (261) = happyShift action_45-action_708 (265) = happyShift action_46-action_708 (269) = happyShift action_47-action_708 (270) = happyShift action_48-action_708 (272) = happyShift action_49-action_708 (273) = happyShift action_50-action_708 (274) = happyShift action_51-action_708 (275) = happyShift action_52-action_708 (276) = happyShift action_53-action_708 (277) = happyShift action_54-action_708 (278) = happyShift action_55-action_708 (279) = happyShift action_56-action_708 (280) = happyShift action_57-action_708 (281) = happyShift action_58-action_708 (282) = happyShift action_59-action_708 (283) = happyShift action_60-action_708 (284) = happyShift action_61-action_708 (286) = happyShift action_62-action_708 (289) = happyShift action_63-action_708 (290) = happyShift action_64-action_708 (291) = happyShift action_65-action_708 (294) = happyShift action_66-action_708 (295) = happyShift action_67-action_708 (296) = happyShift action_68-action_708 (311) = happyShift action_69-action_708 (317) = happyShift action_70-action_708 (320) = happyShift action_71-action_708 (321) = happyShift action_145-action_708 (332) = happyShift action_72-action_708 (334) = happyShift action_73-action_708 (336) = happyShift action_74-action_708 (338) = happyShift action_75-action_708 (340) = happyShift action_76-action_708 (345) = happyShift action_77-action_708 (346) = happyShift action_78-action_708 (347) = happyShift action_79-action_708 (350) = happyShift action_80-action_708 (351) = happyShift action_81-action_708 (354) = happyShift action_82-action_708 (355) = happyShift action_83-action_708 (356) = happyShift action_84-action_708 (357) = happyShift action_85-action_708 (358) = happyShift action_86-action_708 (359) = happyShift action_87-action_708 (360) = happyShift action_88-action_708 (361) = happyShift action_89-action_708 (362) = happyShift action_90-action_708 (363) = happyShift action_91-action_708 (364) = happyShift action_92-action_708 (365) = happyShift action_93-action_708 (366) = happyShift action_94-action_708 (367) = happyShift action_146-action_708 (368) = happyShift action_147-action_708 (369) = happyShift action_148-action_708 (370) = happyShift action_149-action_708 (371) = happyShift action_95-action_708 (372) = happyShift action_96-action_708 (373) = happyShift action_97-action_708 (374) = happyShift action_98-action_708 (376) = happyShift action_99-action_708 (377) = happyShift action_100-action_708 (378) = happyShift action_101-action_708 (379) = happyShift action_102-action_708 (380) = happyShift action_103-action_708 (38) = happyGoto action_13-action_708 (49) = happyGoto action_14-action_708 (135) = happyGoto action_121-action_708 (136) = happyGoto action_122-action_708 (137) = happyGoto action_930-action_708 (141) = happyGoto action_124-action_708 (142) = happyGoto action_16-action_708 (144) = happyGoto action_125-action_708 (145) = happyGoto action_18-action_708 (147) = happyGoto action_19-action_708 (148) = happyGoto action_20-action_708 (149) = happyGoto action_21-action_708 (150) = happyGoto action_22-action_708 (151) = happyGoto action_23-action_708 (152) = happyGoto action_24-action_708 (192) = happyGoto action_25-action_708 (195) = happyGoto action_26-action_708 (198) = happyGoto action_27-action_708 (218) = happyGoto action_28-action_708 (219) = happyGoto action_29-action_708 (220) = happyGoto action_30-action_708 (221) = happyGoto action_31-action_708 (227) = happyGoto action_32-action_708 (229) = happyGoto action_33-action_708 (230) = happyGoto action_34-action_708 (233) = happyGoto action_35-action_708 (237) = happyGoto action_126-action_708 (238) = happyGoto action_127-action_708 (239) = happyGoto action_128-action_708 (240) = happyGoto action_129-action_708 _ = happyReduce_162--action_709 (244) = happyShift action_36-action_709 (245) = happyShift action_37-action_709 (246) = happyShift action_38-action_709 (251) = happyShift action_39-action_709 (253) = happyShift action_40-action_709 (254) = happyShift action_41-action_709 (261) = happyShift action_45-action_709 (265) = happyShift action_46-action_709 (269) = happyShift action_47-action_709 (270) = happyShift action_48-action_709 (272) = happyShift action_49-action_709 (273) = happyShift action_50-action_709 (274) = happyShift action_51-action_709 (275) = happyShift action_52-action_709 (276) = happyShift action_53-action_709 (277) = happyShift action_54-action_709 (278) = happyShift action_55-action_709 (279) = happyShift action_56-action_709 (280) = happyShift action_57-action_709 (281) = happyShift action_58-action_709 (282) = happyShift action_59-action_709 (283) = happyShift action_60-action_709 (284) = happyShift action_61-action_709 (286) = happyShift action_62-action_709 (294) = happyShift action_66-action_709 (295) = happyShift action_67-action_709 (296) = happyShift action_68-action_709 (311) = happyShift action_69-action_709 (317) = happyShift action_70-action_709 (320) = happyShift action_71-action_709 (332) = happyShift action_72-action_709 (334) = happyShift action_73-action_709 (336) = happyShift action_107-action_709 (338) = happyShift action_75-action_709 (340) = happyShift action_76-action_709 (345) = happyShift action_77-action_709 (346) = happyShift action_78-action_709 (347) = happyShift action_79-action_709 (350) = happyShift action_80-action_709 (351) = happyShift action_81-action_709 (354) = happyShift action_82-action_709 (355) = happyShift action_83-action_709 (356) = happyShift action_84-action_709 (357) = happyShift action_85-action_709 (358) = happyShift action_86-action_709 (359) = happyShift action_87-action_709 (360) = happyShift action_88-action_709 (361) = happyShift action_89-action_709 (362) = happyShift action_90-action_709 (363) = happyShift action_91-action_709 (364) = happyShift action_92-action_709 (365) = happyShift action_93-action_709 (366) = happyShift action_94-action_709 (371) = happyShift action_95-action_709 (372) = happyShift action_96-action_709 (373) = happyShift action_97-action_709 (374) = happyShift action_98-action_709 (376) = happyShift action_99-action_709 (377) = happyShift action_100-action_709 (378) = happyShift action_101-action_709 (379) = happyShift action_102-action_709 (380) = happyShift action_103-action_709 (38) = happyGoto action_13-action_709 (142) = happyGoto action_16-action_709 (143) = happyGoto action_929-action_709 (144) = happyGoto action_105-action_709 (145) = happyGoto action_18-action_709 (147) = happyGoto action_19-action_709 (148) = happyGoto action_20-action_709 (149) = happyGoto action_21-action_709 (150) = happyGoto action_22-action_709 (151) = happyGoto action_23-action_709 (152) = happyGoto action_24-action_709 (192) = happyGoto action_25-action_709 (195) = happyGoto action_26-action_709 (198) = happyGoto action_27-action_709 (219) = happyGoto action_29-action_709 (220) = happyGoto action_30-action_709 (221) = happyGoto action_106-action_709 (227) = happyGoto action_32-action_709 (229) = happyGoto action_33-action_709 (230) = happyGoto action_34-action_709 (233) = happyGoto action_35-action_709 _ = happyFail--action_710 _ = happyReduce_169--action_711 _ = happyReduce_166--action_712 (358) = happyShift action_928-action_712 (43) = happyGoto action_927-action_712 _ = happyReduce_75--action_713 _ = happyReduce_76--action_714 _ = happyReduce_111--action_715 _ = happyReduce_107--action_716 (332) = happyShift action_389-action_716 (334) = happyShift action_390-action_716 (336) = happyShift action_391-action_716 (338) = happyShift action_392-action_716 (347) = happyShift action_193-action_716 (351) = happyShift action_194-action_716 (355) = happyShift action_195-action_716 (201) = happyGoto action_926-action_716 (202) = happyGoto action_387-action_716 (203) = happyGoto action_173-action_716 (205) = happyGoto action_174-action_716 (206) = happyGoto action_175-action_716 _ = happyFail--action_717 (306) = happyShift action_925-action_717 _ = happyFail--action_718 _ = happyReduce_110--action_719 _ = happyReduce_106--action_720 (332) = happyShift action_389-action_720 (334) = happyShift action_390-action_720 (336) = happyShift action_391-action_720 (338) = happyShift action_392-action_720 (347) = happyShift action_193-action_720 (351) = happyShift action_194-action_720 (355) = happyShift action_195-action_720 (201) = happyGoto action_924-action_720 (202) = happyGoto action_387-action_720 (203) = happyGoto action_173-action_720 (205) = happyGoto action_174-action_720 (206) = happyGoto action_175-action_720 _ = happyFail--action_721 _ = happyReduce_201--action_722 _ = happyReduce_203--action_723 (306) = happyShift action_923-action_723 _ = happyFail--action_724 _ = happyReduce_523--action_725 _ = happyReduce_582--action_726 _ = happyReduce_187--action_727 _ = happyReduce_516--action_728 _ = happyReduce_192--action_729 (333) = happyShift action_921-action_729 (343) = happyShift action_922-action_729 _ = happyFail--action_730 _ = happyReduce_200--action_731 _ = happyReduce_172--action_732 (244) = happyShift action_36-action_732 (245) = happyShift action_37-action_732 (246) = happyShift action_38-action_732 (251) = happyShift action_39-action_732 (253) = happyShift action_40-action_732 (254) = happyShift action_41-action_732 (261) = happyShift action_45-action_732 (265) = happyShift action_46-action_732 (269) = happyShift action_47-action_732 (270) = happyShift action_48-action_732 (272) = happyShift action_49-action_732 (273) = happyShift action_50-action_732 (274) = happyShift action_51-action_732 (275) = happyShift action_52-action_732 (276) = happyShift action_53-action_732 (277) = happyShift action_54-action_732 (278) = happyShift action_55-action_732 (279) = happyShift action_56-action_732 (280) = happyShift action_57-action_732 (281) = happyShift action_58-action_732 (282) = happyShift action_59-action_732 (283) = happyShift action_60-action_732 (284) = happyShift action_61-action_732 (286) = happyShift action_62-action_732 (294) = happyShift action_66-action_732 (295) = happyShift action_67-action_732 (296) = happyShift action_68-action_732 (311) = happyShift action_69-action_732 (317) = happyShift action_70-action_732 (320) = happyShift action_71-action_732 (332) = happyShift action_72-action_732 (334) = happyShift action_73-action_732 (336) = happyShift action_107-action_732 (338) = happyShift action_75-action_732 (340) = happyShift action_76-action_732 (345) = happyShift action_77-action_732 (346) = happyShift action_78-action_732 (347) = happyShift action_79-action_732 (350) = happyShift action_80-action_732 (351) = happyShift action_81-action_732 (354) = happyShift action_82-action_732 (355) = happyShift action_83-action_732 (356) = happyShift action_84-action_732 (357) = happyShift action_85-action_732 (358) = happyShift action_86-action_732 (359) = happyShift action_87-action_732 (360) = happyShift action_88-action_732 (361) = happyShift action_89-action_732 (362) = happyShift action_90-action_732 (363) = happyShift action_91-action_732 (364) = happyShift action_92-action_732 (365) = happyShift action_93-action_732 (366) = happyShift action_94-action_732 (371) = happyShift action_95-action_732 (372) = happyShift action_96-action_732 (373) = happyShift action_97-action_732 (374) = happyShift action_98-action_732 (376) = happyShift action_99-action_732 (377) = happyShift action_100-action_732 (378) = happyShift action_101-action_732 (379) = happyShift action_102-action_732 (380) = happyShift action_103-action_732 (38) = happyGoto action_13-action_732 (142) = happyGoto action_16-action_732 (144) = happyGoto action_920-action_732 (145) = happyGoto action_18-action_732 (147) = happyGoto action_19-action_732 (148) = happyGoto action_20-action_732 (149) = happyGoto action_21-action_732 (150) = happyGoto action_22-action_732 (151) = happyGoto action_23-action_732 (152) = happyGoto action_24-action_732 (192) = happyGoto action_25-action_732 (195) = happyGoto action_26-action_732 (198) = happyGoto action_27-action_732 (219) = happyGoto action_29-action_732 (220) = happyGoto action_30-action_732 (221) = happyGoto action_106-action_732 (227) = happyGoto action_32-action_732 (229) = happyGoto action_33-action_732 (230) = happyGoto action_34-action_732 (233) = happyGoto action_35-action_732 _ = happyFail--action_733 (245) = happyShift action_37-action_733 (253) = happyShift action_40-action_733 (265) = happyShift action_46-action_733 (270) = happyShift action_48-action_733 (272) = happyShift action_49-action_733 (273) = happyShift action_50-action_733 (274) = happyShift action_51-action_733 (275) = happyShift action_52-action_733 (276) = happyShift action_53-action_733 (277) = happyShift action_54-action_733 (279) = happyShift action_56-action_733 (280) = happyShift action_57-action_733 (281) = happyShift action_58-action_733 (282) = happyShift action_59-action_733 (283) = happyShift action_60-action_733 (286) = happyShift action_62-action_733 (336) = happyShift action_919-action_733 (346) = happyShift action_78-action_733 (80) = happyGoto action_916-action_733 (81) = happyGoto action_917-action_733 (221) = happyGoto action_918-action_733 (227) = happyGoto action_32-action_733 _ = happyFail--action_734 (245) = happyShift action_37-action_734 (253) = happyShift action_40-action_734 (265) = happyShift action_46-action_734 (270) = happyShift action_48-action_734 (272) = happyShift action_49-action_734 (273) = happyShift action_50-action_734 (274) = happyShift action_51-action_734 (275) = happyShift action_52-action_734 (276) = happyShift action_53-action_734 (277) = happyShift action_54-action_734 (279) = happyShift action_56-action_734 (280) = happyShift action_57-action_734 (281) = happyShift action_58-action_734 (282) = happyShift action_59-action_734 (283) = happyShift action_60-action_734 (286) = happyShift action_62-action_734 (336) = happyShift action_473-action_734 (346) = happyShift action_78-action_734 (358) = happyShift action_740-action_734 (92) = happyGoto action_915-action_734 (218) = happyGoto action_736-action_734 (221) = happyGoto action_327-action_734 (227) = happyGoto action_32-action_734 _ = happyFail--action_735 _ = happyReduce_205--action_736 (309) = happyShift action_914-action_736 _ = happyFail--action_737 (309) = happyReduce_592-action_737 _ = happyReduce_212--action_738 (309) = happyReduce_593-action_738 _ = happyReduce_213--action_739 (309) = happyReduce_591-action_739 _ = happyReduce_211--action_740 (245) = happyShift action_37-action_740 (253) = happyShift action_40-action_740 (265) = happyShift action_46-action_740 (270) = happyShift action_48-action_740 (272) = happyShift action_49-action_740 (273) = happyShift action_50-action_740 (274) = happyShift action_51-action_740 (275) = happyShift action_52-action_740 (276) = happyShift action_53-action_740 (277) = happyShift action_54-action_740 (279) = happyShift action_56-action_740 (280) = happyShift action_57-action_740 (281) = happyShift action_58-action_740 (282) = happyShift action_59-action_740 (283) = happyShift action_60-action_740 (286) = happyShift action_62-action_740 (336) = happyShift action_473-action_740 (346) = happyShift action_78-action_740 (218) = happyGoto action_913-action_740 (221) = happyGoto action_327-action_740 (227) = happyGoto action_32-action_740 _ = happyFail--action_741 _ = happyReduce_206--action_742 _ = happyReduce_115--action_743 (245) = happyShift action_37-action_743 (253) = happyShift action_40-action_743 (265) = happyShift action_46-action_743 (272) = happyShift action_49-action_743 (273) = happyShift action_50-action_743 (274) = happyShift action_51-action_743 (275) = happyShift action_180-action_743 (276) = happyShift action_181-action_743 (277) = happyShift action_182-action_743 (280) = happyShift action_57-action_743 (281) = happyShift action_58-action_743 (282) = happyShift action_59-action_743 (283) = happyShift action_60-action_743 (286) = happyShift action_62-action_743 (299) = happyShift action_183-action_743 (300) = happyShift action_184-action_743 (321) = happyShift action_185-action_743 (328) = happyShift action_186-action_743 (332) = happyShift action_187-action_743 (334) = happyShift action_188-action_743 (336) = happyShift action_189-action_743 (338) = happyShift action_190-action_743 (345) = happyShift action_191-action_743 (346) = happyShift action_192-action_743 (347) = happyShift action_193-action_743 (351) = happyShift action_194-action_743 (355) = happyShift action_195-action_743 (358) = happyShift action_196-action_743 (359) = happyShift action_197-action_743 (376) = happyShift action_198-action_743 (377) = happyShift action_199-action_743 (379) = happyShift action_102-action_743 (380) = happyShift action_103-action_743 (100) = happyGoto action_164-action_743 (107) = happyGoto action_289-action_743 (142) = happyGoto action_170-action_743 (202) = happyGoto action_172-action_743 (203) = happyGoto action_173-action_743 (205) = happyGoto action_174-action_743 (206) = happyGoto action_175-action_743 (215) = happyGoto action_176-action_743 (217) = happyGoto action_177-action_743 (227) = happyGoto action_178-action_743 _ = happyReduce_245--action_744 (245) = happyShift action_37-action_744 (253) = happyShift action_40-action_744 (265) = happyShift action_46-action_744 (270) = happyShift action_179-action_744 (272) = happyShift action_49-action_744 (273) = happyShift action_50-action_744 (274) = happyShift action_51-action_744 (275) = happyShift action_180-action_744 (276) = happyShift action_181-action_744 (277) = happyShift action_182-action_744 (280) = happyShift action_57-action_744 (281) = happyShift action_58-action_744 (282) = happyShift action_59-action_744 (283) = happyShift action_60-action_744 (286) = happyShift action_62-action_744 (299) = happyShift action_183-action_744 (300) = happyShift action_184-action_744 (321) = happyShift action_185-action_744 (328) = happyShift action_186-action_744 (332) = happyShift action_187-action_744 (334) = happyShift action_188-action_744 (336) = happyShift action_189-action_744 (338) = happyShift action_190-action_744 (345) = happyShift action_191-action_744 (346) = happyShift action_192-action_744 (347) = happyShift action_193-action_744 (351) = happyShift action_194-action_744 (355) = happyShift action_195-action_744 (356) = happyShift action_84-action_744 (358) = happyShift action_196-action_744 (359) = happyShift action_197-action_744 (376) = happyShift action_198-action_744 (377) = happyShift action_199-action_744 (379) = happyShift action_102-action_744 (380) = happyShift action_103-action_744 (100) = happyGoto action_164-action_744 (101) = happyGoto action_912-action_744 (103) = happyGoto action_166-action_744 (104) = happyGoto action_167-action_744 (106) = happyGoto action_168-action_744 (107) = happyGoto action_169-action_744 (142) = happyGoto action_170-action_744 (192) = happyGoto action_171-action_744 (202) = happyGoto action_172-action_744 (203) = happyGoto action_173-action_744 (205) = happyGoto action_174-action_744 (206) = happyGoto action_175-action_744 (215) = happyGoto action_176-action_744 (217) = happyGoto action_177-action_744 (227) = happyGoto action_178-action_744 _ = happyFail--action_745 _ = happyReduce_116--action_746 (245) = happyShift action_37-action_746 (253) = happyShift action_40-action_746 (265) = happyShift action_46-action_746 (272) = happyShift action_49-action_746 (273) = happyShift action_50-action_746 (274) = happyShift action_51-action_746 (275) = happyShift action_180-action_746 (276) = happyShift action_181-action_746 (277) = happyShift action_182-action_746 (280) = happyShift action_57-action_746 (281) = happyShift action_58-action_746 (282) = happyShift action_59-action_746 (283) = happyShift action_60-action_746 (286) = happyShift action_62-action_746 (322) = happyShift action_685-action_746 (332) = happyShift action_686-action_746 (336) = happyShift action_687-action_746 (346) = happyShift action_192-action_746 (347) = happyShift action_193-action_746 (351) = happyShift action_194-action_746 (355) = happyShift action_195-action_746 (118) = happyGoto action_911-action_746 (119) = happyGoto action_680-action_746 (120) = happyGoto action_681-action_746 (121) = happyGoto action_682-action_746 (205) = happyGoto action_683-action_746 (206) = happyGoto action_175-action_746 (215) = happyGoto action_684-action_746 (217) = happyGoto action_177-action_746 (227) = happyGoto action_178-action_746 _ = happyFail--action_747 _ = happyReduce_159--action_748 (244) = happyShift action_36-action_748 (245) = happyShift action_37-action_748 (246) = happyShift action_38-action_748 (248) = happyShift action_908-action_748 (251) = happyShift action_39-action_748 (253) = happyShift action_40-action_748 (254) = happyShift action_41-action_748 (257) = happyShift action_42-action_748 (258) = happyShift action_43-action_748 (259) = happyShift action_44-action_748 (261) = happyShift action_45-action_748 (263) = happyShift action_135-action_748 (265) = happyShift action_46-action_748 (267) = happyShift action_909-action_748 (269) = happyShift action_47-action_748 (270) = happyShift action_48-action_748 (272) = happyShift action_49-action_748 (273) = happyShift action_50-action_748 (274) = happyShift action_51-action_748 (275) = happyShift action_52-action_748 (276) = happyShift action_53-action_748 (277) = happyShift action_54-action_748 (278) = happyShift action_55-action_748 (279) = happyShift action_56-action_748 (280) = happyShift action_57-action_748 (281) = happyShift action_58-action_748 (282) = happyShift action_59-action_748 (283) = happyShift action_60-action_748 (284) = happyShift action_61-action_748 (286) = happyShift action_62-action_748 (289) = happyShift action_63-action_748 (290) = happyShift action_64-action_748 (291) = happyShift action_65-action_748 (294) = happyShift action_66-action_748 (295) = happyShift action_67-action_748 (296) = happyShift action_68-action_748 (311) = happyShift action_69-action_748 (317) = happyShift action_70-action_748 (320) = happyShift action_71-action_748 (321) = happyShift action_145-action_748 (332) = happyShift action_72-action_748 (334) = happyShift action_73-action_748 (336) = happyShift action_74-action_748 (338) = happyShift action_75-action_748 (340) = happyShift action_76-action_748 (345) = happyShift action_77-action_748 (346) = happyShift action_78-action_748 (347) = happyShift action_79-action_748 (350) = happyShift action_80-action_748 (351) = happyShift action_81-action_748 (354) = happyShift action_82-action_748 (355) = happyShift action_83-action_748 (356) = happyShift action_84-action_748 (357) = happyShift action_85-action_748 (358) = happyShift action_86-action_748 (359) = happyShift action_87-action_748 (360) = happyShift action_88-action_748 (361) = happyShift action_89-action_748 (362) = happyShift action_90-action_748 (363) = happyShift action_91-action_748 (364) = happyShift action_92-action_748 (365) = happyShift action_93-action_748 (366) = happyShift action_94-action_748 (367) = happyShift action_146-action_748 (368) = happyShift action_147-action_748 (369) = happyShift action_148-action_748 (370) = happyShift action_149-action_748 (371) = happyShift action_95-action_748 (372) = happyShift action_96-action_748 (373) = happyShift action_97-action_748 (374) = happyShift action_98-action_748 (376) = happyShift action_99-action_748 (377) = happyShift action_100-action_748 (378) = happyShift action_101-action_748 (379) = happyShift action_102-action_748 (380) = happyShift action_103-action_748 (38) = happyGoto action_13-action_748 (49) = happyGoto action_14-action_748 (57) = happyGoto action_903-action_748 (58) = happyGoto action_904-action_748 (67) = happyGoto action_905-action_748 (68) = happyGoto action_910-action_748 (135) = happyGoto action_121-action_748 (136) = happyGoto action_122-action_748 (137) = happyGoto action_907-action_748 (141) = happyGoto action_124-action_748 (142) = happyGoto action_16-action_748 (144) = happyGoto action_125-action_748 (145) = happyGoto action_18-action_748 (147) = happyGoto action_19-action_748 (148) = happyGoto action_20-action_748 (149) = happyGoto action_21-action_748 (150) = happyGoto action_22-action_748 (151) = happyGoto action_23-action_748 (152) = happyGoto action_24-action_748 (192) = happyGoto action_25-action_748 (195) = happyGoto action_26-action_748 (198) = happyGoto action_27-action_748 (218) = happyGoto action_28-action_748 (219) = happyGoto action_29-action_748 (220) = happyGoto action_30-action_748 (221) = happyGoto action_31-action_748 (227) = happyGoto action_32-action_748 (229) = happyGoto action_33-action_748 (230) = happyGoto action_34-action_748 (233) = happyGoto action_35-action_748 (237) = happyGoto action_126-action_748 (238) = happyGoto action_127-action_748 (239) = happyGoto action_128-action_748 (240) = happyGoto action_129-action_748 _ = happyReduce_156--action_749 (244) = happyShift action_36-action_749 (245) = happyShift action_37-action_749 (246) = happyShift action_38-action_749 (248) = happyShift action_908-action_749 (251) = happyShift action_39-action_749 (253) = happyShift action_40-action_749 (254) = happyShift action_41-action_749 (257) = happyShift action_42-action_749 (258) = happyShift action_43-action_749 (259) = happyShift action_44-action_749 (261) = happyShift action_45-action_749 (263) = happyShift action_135-action_749 (265) = happyShift action_46-action_749 (267) = happyShift action_909-action_749 (269) = happyShift action_47-action_749 (270) = happyShift action_48-action_749 (272) = happyShift action_49-action_749 (273) = happyShift action_50-action_749 (274) = happyShift action_51-action_749 (275) = happyShift action_52-action_749 (276) = happyShift action_53-action_749 (277) = happyShift action_54-action_749 (278) = happyShift action_55-action_749 (279) = happyShift action_56-action_749 (280) = happyShift action_57-action_749 (281) = happyShift action_58-action_749 (282) = happyShift action_59-action_749 (283) = happyShift action_60-action_749 (284) = happyShift action_61-action_749 (286) = happyShift action_62-action_749 (289) = happyShift action_63-action_749 (290) = happyShift action_64-action_749 (291) = happyShift action_65-action_749 (294) = happyShift action_66-action_749 (295) = happyShift action_67-action_749 (296) = happyShift action_68-action_749 (311) = happyShift action_69-action_749 (317) = happyShift action_70-action_749 (320) = happyShift action_71-action_749 (321) = happyShift action_145-action_749 (332) = happyShift action_72-action_749 (334) = happyShift action_73-action_749 (336) = happyShift action_74-action_749 (338) = happyShift action_75-action_749 (340) = happyShift action_76-action_749 (345) = happyShift action_77-action_749 (346) = happyShift action_78-action_749 (347) = happyShift action_79-action_749 (350) = happyShift action_80-action_749 (351) = happyShift action_81-action_749 (354) = happyShift action_82-action_749 (355) = happyShift action_83-action_749 (356) = happyShift action_84-action_749 (357) = happyShift action_85-action_749 (358) = happyShift action_86-action_749 (359) = happyShift action_87-action_749 (360) = happyShift action_88-action_749 (361) = happyShift action_89-action_749 (362) = happyShift action_90-action_749 (363) = happyShift action_91-action_749 (364) = happyShift action_92-action_749 (365) = happyShift action_93-action_749 (366) = happyShift action_94-action_749 (367) = happyShift action_146-action_749 (368) = happyShift action_147-action_749 (369) = happyShift action_148-action_749 (370) = happyShift action_149-action_749 (371) = happyShift action_95-action_749 (372) = happyShift action_96-action_749 (373) = happyShift action_97-action_749 (374) = happyShift action_98-action_749 (376) = happyShift action_99-action_749 (377) = happyShift action_100-action_749 (378) = happyShift action_101-action_749 (379) = happyShift action_102-action_749 (380) = happyShift action_103-action_749 (38) = happyGoto action_13-action_749 (49) = happyGoto action_14-action_749 (57) = happyGoto action_903-action_749 (58) = happyGoto action_904-action_749 (67) = happyGoto action_905-action_749 (68) = happyGoto action_906-action_749 (135) = happyGoto action_121-action_749 (136) = happyGoto action_122-action_749 (137) = happyGoto action_907-action_749 (141) = happyGoto action_124-action_749 (142) = happyGoto action_16-action_749 (144) = happyGoto action_125-action_749 (145) = happyGoto action_18-action_749 (147) = happyGoto action_19-action_749 (148) = happyGoto action_20-action_749 (149) = happyGoto action_21-action_749 (150) = happyGoto action_22-action_749 (151) = happyGoto action_23-action_749 (152) = happyGoto action_24-action_749 (192) = happyGoto action_25-action_749 (195) = happyGoto action_26-action_749 (198) = happyGoto action_27-action_749 (218) = happyGoto action_28-action_749 (219) = happyGoto action_29-action_749 (220) = happyGoto action_30-action_749 (221) = happyGoto action_31-action_749 (227) = happyGoto action_32-action_749 (229) = happyGoto action_33-action_749 (230) = happyGoto action_34-action_749 (233) = happyGoto action_35-action_749 (237) = happyGoto action_126-action_749 (238) = happyGoto action_127-action_749 (239) = happyGoto action_128-action_749 (240) = happyGoto action_129-action_749 _ = happyReduce_156--action_750 _ = happyReduce_98--action_751 _ = happyReduce_119--action_752 (343) = happyShift action_902-action_752 _ = happyReduce_295--action_753 _ = happyReduce_297--action_754 (245) = happyShift action_37-action_754 (253) = happyShift action_40-action_754 (265) = happyShift action_46-action_754 (272) = happyShift action_49-action_754 (273) = happyShift action_50-action_754 (274) = happyShift action_51-action_754 (275) = happyShift action_180-action_754 (276) = happyShift action_181-action_754 (277) = happyShift action_182-action_754 (280) = happyShift action_57-action_754 (281) = happyShift action_58-action_754 (282) = happyShift action_59-action_754 (283) = happyShift action_60-action_754 (286) = happyShift action_62-action_754 (315) = happyShift action_901-action_754 (346) = happyShift action_192-action_754 (215) = happyGoto action_900-action_754 (217) = happyGoto action_177-action_754 (227) = happyGoto action_178-action_754 _ = happyFail--action_755 _ = happyReduce_114--action_756 (328) = happyShift action_898-action_756 (330) = happyShift action_899-action_756 (65) = happyGoto action_897-action_756 _ = happyFail--action_757 _ = happyReduce_134--action_758 (310) = happyShift action_896-action_758 _ = happyFail--action_759 (268) = happyShift action_762-action_759 (74) = happyGoto action_895-action_759 _ = happyReduce_171--action_760 _ = happyReduce_351--action_761 _ = happyReduce_352--action_762 (328) = happyShift action_309-action_762 (330) = happyShift action_310-action_762 (72) = happyGoto action_307-action_762 (73) = happyGoto action_894-action_762 _ = happyFail--action_763 (327) = happyShift action_893-action_763 _ = happyFail--action_764 (245) = happyShift action_37-action_764 (253) = happyShift action_40-action_764 (265) = happyShift action_46-action_764 (272) = happyShift action_49-action_764 (273) = happyShift action_50-action_764 (274) = happyShift action_51-action_764 (275) = happyShift action_180-action_764 (276) = happyShift action_181-action_764 (277) = happyShift action_182-action_764 (280) = happyShift action_57-action_764 (281) = happyShift action_58-action_764 (282) = happyShift action_59-action_764 (283) = happyShift action_60-action_764 (286) = happyShift action_62-action_764 (299) = happyShift action_183-action_764 (300) = happyShift action_184-action_764 (321) = happyShift action_185-action_764 (328) = happyShift action_186-action_764 (332) = happyShift action_187-action_764 (334) = happyShift action_188-action_764 (336) = happyShift action_189-action_764 (338) = happyShift action_190-action_764 (345) = happyShift action_191-action_764 (346) = happyShift action_192-action_764 (347) = happyShift action_193-action_764 (351) = happyShift action_194-action_764 (355) = happyShift action_195-action_764 (358) = happyShift action_196-action_764 (359) = happyShift action_197-action_764 (376) = happyShift action_198-action_764 (377) = happyShift action_199-action_764 (379) = happyShift action_102-action_764 (380) = happyShift action_103-action_764 (100) = happyGoto action_164-action_764 (104) = happyGoto action_892-action_764 (106) = happyGoto action_346-action_764 (107) = happyGoto action_169-action_764 (142) = happyGoto action_170-action_764 (202) = happyGoto action_172-action_764 (203) = happyGoto action_173-action_764 (205) = happyGoto action_174-action_764 (206) = happyGoto action_175-action_764 (215) = happyGoto action_176-action_764 (217) = happyGoto action_177-action_764 (227) = happyGoto action_178-action_764 _ = happyFail--action_765 (245) = happyShift action_37-action_765 (253) = happyShift action_40-action_765 (265) = happyShift action_46-action_765 (272) = happyShift action_49-action_765 (273) = happyShift action_50-action_765 (274) = happyShift action_51-action_765 (275) = happyShift action_180-action_765 (276) = happyShift action_181-action_765 (277) = happyShift action_182-action_765 (280) = happyShift action_57-action_765 (281) = happyShift action_58-action_765 (282) = happyShift action_59-action_765 (283) = happyShift action_60-action_765 (286) = happyShift action_62-action_765 (299) = happyShift action_183-action_765 (300) = happyShift action_184-action_765 (321) = happyShift action_185-action_765 (328) = happyShift action_186-action_765 (332) = happyShift action_187-action_765 (334) = happyShift action_188-action_765 (336) = happyShift action_189-action_765 (338) = happyShift action_190-action_765 (345) = happyShift action_191-action_765 (346) = happyShift action_192-action_765 (347) = happyShift action_193-action_765 (351) = happyShift action_194-action_765 (355) = happyShift action_195-action_765 (358) = happyShift action_196-action_765 (359) = happyShift action_197-action_765 (376) = happyShift action_198-action_765 (377) = happyShift action_199-action_765 (379) = happyShift action_102-action_765 (380) = happyShift action_103-action_765 (100) = happyGoto action_164-action_765 (104) = happyGoto action_891-action_765 (106) = happyGoto action_346-action_765 (107) = happyGoto action_169-action_765 (142) = happyGoto action_170-action_765 (202) = happyGoto action_172-action_765 (203) = happyGoto action_173-action_765 (205) = happyGoto action_174-action_765 (206) = happyGoto action_175-action_765 (215) = happyGoto action_176-action_765 (217) = happyGoto action_177-action_765 (227) = happyGoto action_178-action_765 _ = happyFail--action_766 (245) = happyShift action_37-action_766 (253) = happyShift action_40-action_766 (265) = happyShift action_46-action_766 (272) = happyShift action_49-action_766 (273) = happyShift action_50-action_766 (274) = happyShift action_51-action_766 (275) = happyShift action_180-action_766 (276) = happyShift action_181-action_766 (277) = happyShift action_182-action_766 (280) = happyShift action_57-action_766 (281) = happyShift action_58-action_766 (282) = happyShift action_59-action_766 (283) = happyShift action_60-action_766 (286) = happyShift action_62-action_766 (299) = happyShift action_183-action_766 (300) = happyShift action_184-action_766 (321) = happyShift action_185-action_766 (328) = happyShift action_186-action_766 (332) = happyShift action_187-action_766 (334) = happyShift action_188-action_766 (336) = happyShift action_189-action_766 (338) = happyShift action_190-action_766 (345) = happyShift action_191-action_766 (346) = happyShift action_192-action_766 (347) = happyShift action_193-action_766 (351) = happyShift action_194-action_766 (355) = happyShift action_195-action_766 (358) = happyShift action_196-action_766 (359) = happyShift action_197-action_766 (376) = happyShift action_198-action_766 (377) = happyShift action_199-action_766 (379) = happyShift action_102-action_766 (380) = happyShift action_103-action_766 (100) = happyGoto action_164-action_766 (104) = happyGoto action_890-action_766 (106) = happyGoto action_346-action_766 (107) = happyGoto action_169-action_766 (142) = happyGoto action_170-action_766 (202) = happyGoto action_172-action_766 (203) = happyGoto action_173-action_766 (205) = happyGoto action_174-action_766 (206) = happyGoto action_175-action_766 (215) = happyGoto action_176-action_766 (217) = happyGoto action_177-action_766 (227) = happyGoto action_178-action_766 _ = happyFail--action_767 (315) = happyShift action_889-action_767 _ = happyReduce_249--action_768 (245) = happyShift action_37-action_768 (253) = happyShift action_40-action_768 (265) = happyShift action_46-action_768 (270) = happyShift action_553-action_768 (272) = happyShift action_49-action_768 (273) = happyShift action_50-action_768 (274) = happyShift action_51-action_768 (275) = happyShift action_180-action_768 (276) = happyShift action_181-action_768 (277) = happyShift action_182-action_768 (280) = happyShift action_57-action_768 (281) = happyShift action_58-action_768 (282) = happyShift action_59-action_768 (283) = happyShift action_60-action_768 (286) = happyShift action_62-action_768 (299) = happyShift action_183-action_768 (300) = happyShift action_184-action_768 (321) = happyShift action_185-action_768 (328) = happyShift action_186-action_768 (332) = happyShift action_187-action_768 (334) = happyShift action_188-action_768 (336) = happyShift action_189-action_768 (338) = happyShift action_190-action_768 (345) = happyShift action_191-action_768 (346) = happyShift action_192-action_768 (347) = happyShift action_193-action_768 (351) = happyShift action_194-action_768 (355) = happyShift action_195-action_768 (356) = happyShift action_84-action_768 (358) = happyShift action_196-action_768 (359) = happyShift action_197-action_768 (376) = happyShift action_198-action_768 (377) = happyShift action_199-action_768 (379) = happyShift action_102-action_768 (380) = happyShift action_103-action_768 (100) = happyGoto action_164-action_768 (101) = happyGoto action_628-action_768 (102) = happyGoto action_846-action_768 (103) = happyGoto action_550-action_768 (104) = happyGoto action_167-action_768 (105) = happyGoto action_462-action_768 (106) = happyGoto action_551-action_768 (107) = happyGoto action_169-action_768 (142) = happyGoto action_170-action_768 (192) = happyGoto action_552-action_768 (202) = happyGoto action_172-action_768 (203) = happyGoto action_173-action_768 (205) = happyGoto action_174-action_768 (206) = happyGoto action_175-action_768 (215) = happyGoto action_176-action_768 (217) = happyGoto action_177-action_768 (227) = happyGoto action_178-action_768 _ = happyFail--action_769 (245) = happyShift action_37-action_769 (253) = happyShift action_40-action_769 (265) = happyShift action_46-action_769 (272) = happyShift action_49-action_769 (273) = happyShift action_50-action_769 (274) = happyShift action_51-action_769 (275) = happyShift action_180-action_769 (276) = happyShift action_181-action_769 (277) = happyShift action_182-action_769 (280) = happyShift action_57-action_769 (281) = happyShift action_58-action_769 (282) = happyShift action_59-action_769 (283) = happyShift action_60-action_769 (286) = happyShift action_62-action_769 (299) = happyShift action_183-action_769 (300) = happyShift action_184-action_769 (321) = happyShift action_185-action_769 (328) = happyShift action_186-action_769 (332) = happyShift action_187-action_769 (334) = happyShift action_188-action_769 (336) = happyShift action_189-action_769 (338) = happyShift action_190-action_769 (345) = happyShift action_191-action_769 (346) = happyShift action_192-action_769 (347) = happyShift action_193-action_769 (351) = happyShift action_194-action_769 (355) = happyShift action_195-action_769 (358) = happyShift action_196-action_769 (359) = happyShift action_197-action_769 (376) = happyShift action_198-action_769 (377) = happyShift action_199-action_769 (379) = happyShift action_102-action_769 (380) = happyShift action_103-action_769 (100) = happyGoto action_164-action_769 (106) = happyGoto action_888-action_769 (107) = happyGoto action_169-action_769 (142) = happyGoto action_170-action_769 (202) = happyGoto action_172-action_769 (203) = happyGoto action_173-action_769 (205) = happyGoto action_174-action_769 (206) = happyGoto action_175-action_769 (215) = happyGoto action_176-action_769 (217) = happyGoto action_177-action_769 (227) = happyGoto action_178-action_769 _ = happyFail--action_770 (308) = happyShift action_212-action_770 (320) = happyShift action_213-action_770 (321) = happyShift action_214-action_770 (322) = happyShift action_215-action_770 (327) = happyShift action_216-action_770 (332) = happyShift action_254-action_770 (336) = happyShift action_255-action_770 (344) = happyShift action_624-action_770 (347) = happyShift action_79-action_770 (348) = happyShift action_221-action_770 (349) = happyShift action_222-action_770 (351) = happyShift action_81-action_770 (353) = happyShift action_224-action_770 (355) = happyShift action_83-action_770 (200) = happyGoto action_886-action_770 (210) = happyGoto action_887-action_770 (225) = happyGoto action_456-action_770 (226) = happyGoto action_208-action_770 (228) = happyGoto action_209-action_770 (229) = happyGoto action_253-action_770 (230) = happyGoto action_34-action_770 (231) = happyGoto action_210-action_770 (232) = happyGoto action_211-action_770 _ = happyFail--action_771 (245) = happyShift action_37-action_771 (253) = happyShift action_40-action_771 (265) = happyShift action_46-action_771 (270) = happyShift action_553-action_771 (272) = happyShift action_49-action_771 (273) = happyShift action_50-action_771 (274) = happyShift action_51-action_771 (275) = happyShift action_180-action_771 (276) = happyShift action_181-action_771 (277) = happyShift action_182-action_771 (280) = happyShift action_57-action_771 (281) = happyShift action_58-action_771 (282) = happyShift action_59-action_771 (283) = happyShift action_60-action_771 (286) = happyShift action_62-action_771 (299) = happyShift action_183-action_771 (300) = happyShift action_184-action_771 (321) = happyShift action_185-action_771 (328) = happyShift action_186-action_771 (332) = happyShift action_187-action_771 (334) = happyShift action_188-action_771 (336) = happyShift action_189-action_771 (338) = happyShift action_190-action_771 (345) = happyShift action_191-action_771 (346) = happyShift action_192-action_771 (347) = happyShift action_193-action_771 (351) = happyShift action_194-action_771 (355) = happyShift action_195-action_771 (356) = happyShift action_84-action_771 (358) = happyShift action_196-action_771 (359) = happyShift action_197-action_771 (376) = happyShift action_198-action_771 (377) = happyShift action_199-action_771 (379) = happyShift action_102-action_771 (380) = happyShift action_103-action_771 (100) = happyGoto action_164-action_771 (101) = happyGoto action_621-action_771 (102) = happyGoto action_842-action_771 (103) = happyGoto action_550-action_771 (104) = happyGoto action_167-action_771 (105) = happyGoto action_462-action_771 (106) = happyGoto action_551-action_771 (107) = happyGoto action_169-action_771 (142) = happyGoto action_170-action_771 (192) = happyGoto action_552-action_771 (202) = happyGoto action_172-action_771 (203) = happyGoto action_173-action_771 (205) = happyGoto action_174-action_771 (206) = happyGoto action_175-action_771 (215) = happyGoto action_176-action_771 (217) = happyGoto action_177-action_771 (227) = happyGoto action_178-action_771 _ = happyFail--action_772 (268) = happyShift action_882-action_772 (123) = happyGoto action_885-action_772 _ = happyReduce_317--action_773 (250) = happyShift action_880-action_773 (134) = happyGoto action_884-action_773 _ = happyReduce_337--action_774 (310) = happyShift action_883-action_774 _ = happyFail--action_775 (268) = happyShift action_882-action_775 (123) = happyGoto action_881-action_775 _ = happyReduce_317--action_776 (250) = happyShift action_880-action_776 (134) = happyGoto action_879-action_776 _ = happyReduce_337--action_777 _ = happyReduce_137--action_778 (306) = happyShift action_878-action_778 _ = happyFail--action_779 (336) = happyShift action_877-action_779 (29) = happyGoto action_876-action_779 _ = happyReduce_42--action_780 _ = happyReduce_433--action_781 _ = happyReduce_572--action_782 _ = happyReduce_426--action_783 _ = happyReduce_427--action_784 _ = happyReduce_425--action_785 _ = happyReduce_423--action_786 _ = happyReduce_422--action_787 _ = happyReduce_436--action_788 _ = happyReduce_437--action_789 (307) = happyShift action_875-action_789 (315) = happyShift action_542-action_789 _ = happyReduce_430--action_790 _ = happyReduce_448--action_791 _ = happyReduce_465--action_792 _ = happyReduce_449--action_793 (313) = happyShift action_873-action_793 (343) = happyShift action_874-action_793 _ = happyReduce_451--action_794 _ = happyReduce_454--action_795 _ = happyReduce_455--action_796 (244) = happyShift action_36-action_796 (245) = happyShift action_37-action_796 (246) = happyShift action_38-action_796 (251) = happyShift action_39-action_796 (253) = happyShift action_40-action_796 (254) = happyShift action_41-action_796 (261) = happyShift action_45-action_796 (265) = happyShift action_46-action_796 (269) = happyShift action_47-action_796 (270) = happyShift action_48-action_796 (272) = happyShift action_49-action_796 (273) = happyShift action_50-action_796 (274) = happyShift action_51-action_796 (275) = happyShift action_52-action_796 (276) = happyShift action_53-action_796 (277) = happyShift action_54-action_796 (278) = happyShift action_55-action_796 (279) = happyShift action_56-action_796 (280) = happyShift action_57-action_796 (281) = happyShift action_58-action_796 (282) = happyShift action_59-action_796 (283) = happyShift action_60-action_796 (284) = happyShift action_61-action_796 (286) = happyShift action_872-action_796 (294) = happyShift action_66-action_796 (295) = happyShift action_67-action_796 (296) = happyShift action_68-action_796 (311) = happyShift action_69-action_796 (317) = happyShift action_70-action_796 (320) = happyShift action_71-action_796 (332) = happyShift action_72-action_796 (334) = happyShift action_73-action_796 (336) = happyShift action_107-action_796 (338) = happyShift action_75-action_796 (340) = happyShift action_76-action_796 (345) = happyShift action_77-action_796 (346) = happyShift action_78-action_796 (347) = happyShift action_79-action_796 (350) = happyShift action_80-action_796 (351) = happyShift action_81-action_796 (354) = happyShift action_82-action_796 (355) = happyShift action_83-action_796 (356) = happyShift action_84-action_796 (357) = happyShift action_85-action_796 (358) = happyShift action_86-action_796 (359) = happyShift action_87-action_796 (360) = happyShift action_88-action_796 (361) = happyShift action_89-action_796 (362) = happyShift action_90-action_796 (363) = happyShift action_91-action_796 (364) = happyShift action_92-action_796 (365) = happyShift action_93-action_796 (366) = happyShift action_94-action_796 (371) = happyShift action_95-action_796 (372) = happyShift action_96-action_796 (373) = happyShift action_97-action_796 (374) = happyShift action_98-action_796 (376) = happyShift action_99-action_796 (377) = happyShift action_100-action_796 (378) = happyShift action_101-action_796 (379) = happyShift action_102-action_796 (380) = happyShift action_103-action_796 (38) = happyGoto action_13-action_796 (142) = happyGoto action_16-action_796 (143) = happyGoto action_871-action_796 (144) = happyGoto action_105-action_796 (145) = happyGoto action_18-action_796 (147) = happyGoto action_19-action_796 (148) = happyGoto action_20-action_796 (149) = happyGoto action_21-action_796 (150) = happyGoto action_22-action_796 (151) = happyGoto action_23-action_796 (152) = happyGoto action_24-action_796 (192) = happyGoto action_25-action_796 (195) = happyGoto action_26-action_796 (198) = happyGoto action_27-action_796 (219) = happyGoto action_29-action_796 (220) = happyGoto action_30-action_796 (221) = happyGoto action_106-action_796 (227) = happyGoto action_32-action_796 (229) = happyGoto action_33-action_796 (230) = happyGoto action_34-action_796 (233) = happyGoto action_35-action_796 _ = happyFail--action_797 _ = happyReduce_463--action_798 (307) = happyShift action_870-action_798 (315) = happyShift action_542-action_798 _ = happyReduce_430--action_799 _ = happyReduce_446--action_800 _ = happyReduce_444--action_801 _ = happyReduce_447--action_802 (315) = happyShift action_869-action_802 _ = happyFail--action_803 (245) = happyShift action_37-action_803 (253) = happyShift action_40-action_803 (265) = happyShift action_46-action_803 (272) = happyShift action_49-action_803 (273) = happyShift action_50-action_803 (274) = happyShift action_51-action_803 (275) = happyShift action_180-action_803 (276) = happyShift action_181-action_803 (277) = happyShift action_182-action_803 (280) = happyShift action_57-action_803 (281) = happyShift action_58-action_803 (282) = happyShift action_59-action_803 (283) = happyShift action_60-action_803 (286) = happyShift action_62-action_803 (299) = happyShift action_183-action_803 (300) = happyShift action_184-action_803 (321) = happyShift action_185-action_803 (328) = happyShift action_186-action_803 (332) = happyShift action_187-action_803 (334) = happyShift action_188-action_803 (336) = happyShift action_189-action_803 (338) = happyShift action_190-action_803 (345) = happyShift action_191-action_803 (346) = happyShift action_192-action_803 (347) = happyShift action_193-action_803 (351) = happyShift action_194-action_803 (355) = happyShift action_195-action_803 (358) = happyShift action_196-action_803 (359) = happyShift action_197-action_803 (376) = happyShift action_198-action_803 (377) = happyShift action_199-action_803 (379) = happyShift action_102-action_803 (380) = happyShift action_103-action_803 (100) = happyGoto action_164-action_803 (107) = happyGoto action_868-action_803 (142) = happyGoto action_170-action_803 (202) = happyGoto action_172-action_803 (203) = happyGoto action_173-action_803 (205) = happyGoto action_174-action_803 (206) = happyGoto action_175-action_803 (215) = happyGoto action_176-action_803 (217) = happyGoto action_177-action_803 (227) = happyGoto action_178-action_803 _ = happyFail--action_804 _ = happyReduce_487--action_805 _ = happyReduce_483--action_806 (1) = happyShift action_664-action_806 (331) = happyShift action_665-action_806 (234) = happyGoto action_867-action_806 _ = happyFail--action_807 (342) = happyShift action_866-action_807 _ = happyReduce_471--action_808 _ = happyReduce_475--action_809 (309) = happyShift action_865-action_809 (93) = happyGoto action_864-action_809 _ = happyReduce_216--action_810 (244) = happyShift action_36-action_810 (245) = happyShift action_37-action_810 (246) = happyShift action_38-action_810 (251) = happyShift action_39-action_810 (253) = happyShift action_40-action_810 (254) = happyShift action_41-action_810 (261) = happyShift action_45-action_810 (265) = happyShift action_46-action_810 (269) = happyShift action_47-action_810 (270) = happyShift action_48-action_810 (272) = happyShift action_49-action_810 (273) = happyShift action_50-action_810 (274) = happyShift action_51-action_810 (275) = happyShift action_52-action_810 (276) = happyShift action_53-action_810 (277) = happyShift action_54-action_810 (278) = happyShift action_55-action_810 (279) = happyShift action_56-action_810 (280) = happyShift action_57-action_810 (281) = happyShift action_58-action_810 (282) = happyShift action_59-action_810 (283) = happyShift action_60-action_810 (284) = happyShift action_61-action_810 (286) = happyShift action_62-action_810 (294) = happyShift action_66-action_810 (295) = happyShift action_67-action_810 (296) = happyShift action_68-action_810 (311) = happyShift action_69-action_810 (317) = happyShift action_70-action_810 (320) = happyShift action_71-action_810 (321) = happyShift action_158-action_810 (332) = happyShift action_72-action_810 (334) = happyShift action_73-action_810 (336) = happyShift action_107-action_810 (338) = happyShift action_75-action_810 (340) = happyShift action_76-action_810 (342) = happyShift action_810-action_810 (345) = happyShift action_77-action_810 (346) = happyShift action_78-action_810 (347) = happyShift action_79-action_810 (350) = happyShift action_80-action_810 (351) = happyShift action_81-action_810 (354) = happyShift action_82-action_810 (355) = happyShift action_83-action_810 (356) = happyShift action_84-action_810 (357) = happyShift action_85-action_810 (358) = happyShift action_86-action_810 (359) = happyShift action_87-action_810 (360) = happyShift action_88-action_810 (361) = happyShift action_89-action_810 (362) = happyShift action_90-action_810 (363) = happyShift action_91-action_810 (364) = happyShift action_92-action_810 (365) = happyShift action_93-action_810 (366) = happyShift action_94-action_810 (371) = happyShift action_95-action_810 (372) = happyShift action_96-action_810 (373) = happyShift action_97-action_810 (374) = happyShift action_98-action_810 (376) = happyShift action_99-action_810 (377) = happyShift action_100-action_810 (378) = happyShift action_101-action_810 (379) = happyShift action_102-action_810 (380) = happyShift action_103-action_810 (38) = happyGoto action_13-action_810 (142) = happyGoto action_16-action_810 (143) = happyGoto action_805-action_810 (144) = happyGoto action_105-action_810 (145) = happyGoto action_18-action_810 (147) = happyGoto action_19-action_810 (148) = happyGoto action_20-action_810 (149) = happyGoto action_21-action_810 (150) = happyGoto action_22-action_810 (151) = happyGoto action_23-action_810 (152) = happyGoto action_24-action_810 (171) = happyGoto action_863-action_810 (172) = happyGoto action_807-action_810 (173) = happyGoto action_808-action_810 (178) = happyGoto action_809-action_810 (192) = happyGoto action_25-action_810 (195) = happyGoto action_26-action_810 (198) = happyGoto action_27-action_810 (219) = happyGoto action_29-action_810 (220) = happyGoto action_30-action_810 (221) = happyGoto action_106-action_810 (227) = happyGoto action_32-action_810 (229) = happyGoto action_33-action_810 (230) = happyGoto action_34-action_810 (233) = happyGoto action_35-action_810 _ = happyFail--action_811 (329) = happyShift action_862-action_811 _ = happyFail--action_812 (359) = happyShift action_861-action_812 _ = happyFail--action_813 _ = happyReduce_384--action_814 (245) = happyShift action_37-action_814 (253) = happyShift action_40-action_814 (265) = happyShift action_46-action_814 (270) = happyShift action_179-action_814 (272) = happyShift action_49-action_814 (273) = happyShift action_50-action_814 (274) = happyShift action_51-action_814 (275) = happyShift action_180-action_814 (276) = happyShift action_181-action_814 (277) = happyShift action_182-action_814 (280) = happyShift action_57-action_814 (281) = happyShift action_58-action_814 (282) = happyShift action_59-action_814 (283) = happyShift action_60-action_814 (286) = happyShift action_62-action_814 (299) = happyShift action_183-action_814 (300) = happyShift action_184-action_814 (321) = happyShift action_185-action_814 (328) = happyShift action_186-action_814 (332) = happyShift action_187-action_814 (334) = happyShift action_188-action_814 (336) = happyShift action_189-action_814 (338) = happyShift action_190-action_814 (345) = happyShift action_191-action_814 (346) = happyShift action_192-action_814 (347) = happyShift action_193-action_814 (351) = happyShift action_194-action_814 (355) = happyShift action_195-action_814 (356) = happyShift action_84-action_814 (358) = happyShift action_196-action_814 (359) = happyShift action_197-action_814 (376) = happyShift action_198-action_814 (377) = happyShift action_199-action_814 (379) = happyShift action_102-action_814 (380) = happyShift action_103-action_814 (95) = happyGoto action_857-action_814 (98) = happyGoto action_860-action_814 (100) = happyGoto action_164-action_814 (101) = happyGoto action_350-action_814 (103) = happyGoto action_166-action_814 (104) = happyGoto action_167-action_814 (106) = happyGoto action_168-action_814 (107) = happyGoto action_169-action_814 (142) = happyGoto action_170-action_814 (192) = happyGoto action_171-action_814 (202) = happyGoto action_172-action_814 (203) = happyGoto action_173-action_814 (205) = happyGoto action_174-action_814 (206) = happyGoto action_175-action_814 (215) = happyGoto action_176-action_814 (217) = happyGoto action_177-action_814 (227) = happyGoto action_178-action_814 _ = happyFail--action_815 _ = happyReduce_179--action_816 (333) = happyShift action_859-action_816 _ = happyFail--action_817 (245) = happyShift action_37-action_817 (253) = happyShift action_40-action_817 (265) = happyShift action_46-action_817 (270) = happyShift action_179-action_817 (272) = happyShift action_49-action_817 (273) = happyShift action_50-action_817 (274) = happyShift action_51-action_817 (275) = happyShift action_180-action_817 (276) = happyShift action_181-action_817 (277) = happyShift action_182-action_817 (280) = happyShift action_57-action_817 (281) = happyShift action_58-action_817 (282) = happyShift action_59-action_817 (283) = happyShift action_60-action_817 (286) = happyShift action_62-action_817 (299) = happyShift action_183-action_817 (300) = happyShift action_184-action_817 (321) = happyShift action_185-action_817 (328) = happyShift action_186-action_817 (332) = happyShift action_187-action_817 (334) = happyShift action_188-action_817 (336) = happyShift action_189-action_817 (338) = happyShift action_190-action_817 (345) = happyShift action_191-action_817 (346) = happyShift action_192-action_817 (347) = happyShift action_193-action_817 (351) = happyShift action_194-action_817 (355) = happyShift action_195-action_817 (356) = happyShift action_84-action_817 (358) = happyShift action_196-action_817 (359) = happyShift action_197-action_817 (376) = happyShift action_198-action_817 (377) = happyShift action_199-action_817 (379) = happyShift action_102-action_817 (380) = happyShift action_103-action_817 (95) = happyGoto action_857-action_817 (98) = happyGoto action_858-action_817 (100) = happyGoto action_164-action_817 (101) = happyGoto action_350-action_817 (103) = happyGoto action_166-action_817 (104) = happyGoto action_167-action_817 (106) = happyGoto action_168-action_817 (107) = happyGoto action_169-action_817 (142) = happyGoto action_170-action_817 (192) = happyGoto action_171-action_817 (202) = happyGoto action_172-action_817 (203) = happyGoto action_173-action_817 (205) = happyGoto action_174-action_817 (206) = happyGoto action_175-action_817 (215) = happyGoto action_176-action_817 (217) = happyGoto action_177-action_817 (227) = happyGoto action_178-action_817 _ = happyFail--action_818 _ = happyReduce_361--action_819 _ = happyReduce_358--action_820 _ = happyReduce_383--action_821 _ = happyReduce_373--action_822 (244) = happyShift action_36-action_822 (245) = happyShift action_37-action_822 (246) = happyShift action_38-action_822 (251) = happyShift action_39-action_822 (253) = happyShift action_40-action_822 (254) = happyShift action_41-action_822 (261) = happyShift action_45-action_822 (265) = happyShift action_46-action_822 (269) = happyShift action_47-action_822 (270) = happyShift action_48-action_822 (272) = happyShift action_49-action_822 (273) = happyShift action_50-action_822 (274) = happyShift action_51-action_822 (275) = happyShift action_52-action_822 (276) = happyShift action_53-action_822 (277) = happyShift action_54-action_822 (278) = happyShift action_55-action_822 (279) = happyShift action_56-action_822 (280) = happyShift action_57-action_822 (281) = happyShift action_58-action_822 (282) = happyShift action_59-action_822 (283) = happyShift action_60-action_822 (284) = happyShift action_61-action_822 (286) = happyShift action_62-action_822 (294) = happyShift action_66-action_822 (295) = happyShift action_67-action_822 (296) = happyShift action_68-action_822 (311) = happyShift action_69-action_822 (317) = happyShift action_70-action_822 (320) = happyShift action_71-action_822 (332) = happyShift action_72-action_822 (334) = happyShift action_73-action_822 (336) = happyShift action_107-action_822 (338) = happyShift action_75-action_822 (340) = happyShift action_76-action_822 (345) = happyShift action_77-action_822 (346) = happyShift action_78-action_822 (347) = happyShift action_79-action_822 (350) = happyShift action_80-action_822 (351) = happyShift action_81-action_822 (354) = happyShift action_82-action_822 (355) = happyShift action_83-action_822 (356) = happyShift action_84-action_822 (357) = happyShift action_85-action_822 (358) = happyShift action_86-action_822 (359) = happyShift action_87-action_822 (360) = happyShift action_88-action_822 (361) = happyShift action_89-action_822 (362) = happyShift action_90-action_822 (363) = happyShift action_91-action_822 (364) = happyShift action_92-action_822 (365) = happyShift action_93-action_822 (366) = happyShift action_94-action_822 (371) = happyShift action_95-action_822 (372) = happyShift action_96-action_822 (373) = happyShift action_97-action_822 (374) = happyShift action_98-action_822 (376) = happyShift action_99-action_822 (377) = happyShift action_100-action_822 (378) = happyShift action_101-action_822 (379) = happyShift action_102-action_822 (380) = happyShift action_103-action_822 (38) = happyGoto action_13-action_822 (142) = happyGoto action_16-action_822 (143) = happyGoto action_856-action_822 (144) = happyGoto action_105-action_822 (145) = happyGoto action_18-action_822 (147) = happyGoto action_19-action_822 (148) = happyGoto action_20-action_822 (149) = happyGoto action_21-action_822 (150) = happyGoto action_22-action_822 (151) = happyGoto action_23-action_822 (152) = happyGoto action_24-action_822 (192) = happyGoto action_25-action_822 (195) = happyGoto action_26-action_822 (198) = happyGoto action_27-action_822 (219) = happyGoto action_29-action_822 (220) = happyGoto action_30-action_822 (221) = happyGoto action_106-action_822 (227) = happyGoto action_32-action_822 (229) = happyGoto action_33-action_822 (230) = happyGoto action_34-action_822 (233) = happyGoto action_35-action_822 _ = happyFail--action_823 (244) = happyShift action_36-action_823 (245) = happyShift action_37-action_823 (246) = happyShift action_38-action_823 (251) = happyShift action_39-action_823 (253) = happyShift action_40-action_823 (254) = happyShift action_41-action_823 (261) = happyShift action_156-action_823 (265) = happyShift action_46-action_823 (269) = happyShift action_47-action_823 (270) = happyShift action_48-action_823 (272) = happyShift action_49-action_823 (273) = happyShift action_50-action_823 (274) = happyShift action_51-action_823 (275) = happyShift action_52-action_823 (276) = happyShift action_53-action_823 (277) = happyShift action_54-action_823 (278) = happyShift action_55-action_823 (279) = happyShift action_56-action_823 (280) = happyShift action_57-action_823 (281) = happyShift action_58-action_823 (282) = happyShift action_59-action_823 (283) = happyShift action_60-action_823 (284) = happyShift action_61-action_823 (286) = happyShift action_62-action_823 (294) = happyShift action_66-action_823 (295) = happyShift action_67-action_823 (296) = happyShift action_68-action_823 (311) = happyShift action_69-action_823 (317) = happyShift action_70-action_823 (320) = happyShift action_71-action_823 (321) = happyShift action_158-action_823 (332) = happyShift action_72-action_823 (334) = happyShift action_73-action_823 (336) = happyShift action_107-action_823 (338) = happyShift action_75-action_823 (340) = happyShift action_76-action_823 (345) = happyShift action_77-action_823 (346) = happyShift action_78-action_823 (347) = happyShift action_79-action_823 (350) = happyShift action_80-action_823 (351) = happyShift action_81-action_823 (354) = happyShift action_82-action_823 (355) = happyShift action_83-action_823 (356) = happyShift action_84-action_823 (357) = happyShift action_85-action_823 (358) = happyShift action_86-action_823 (359) = happyShift action_87-action_823 (360) = happyShift action_88-action_823 (361) = happyShift action_89-action_823 (362) = happyShift action_90-action_823 (363) = happyShift action_91-action_823 (364) = happyShift action_92-action_823 (365) = happyShift action_93-action_823 (366) = happyShift action_94-action_823 (371) = happyShift action_95-action_823 (372) = happyShift action_96-action_823 (373) = happyShift action_97-action_823 (374) = happyShift action_98-action_823 (376) = happyShift action_99-action_823 (377) = happyShift action_100-action_823 (378) = happyShift action_101-action_823 (379) = happyShift action_102-action_823 (380) = happyShift action_103-action_823 (38) = happyGoto action_13-action_823 (142) = happyGoto action_16-action_823 (143) = happyGoto action_152-action_823 (144) = happyGoto action_105-action_823 (145) = happyGoto action_18-action_823 (147) = happyGoto action_19-action_823 (148) = happyGoto action_20-action_823 (149) = happyGoto action_21-action_823 (150) = happyGoto action_22-action_823 (151) = happyGoto action_23-action_823 (152) = happyGoto action_24-action_823 (178) = happyGoto action_153-action_823 (186) = happyGoto action_855-action_823 (192) = happyGoto action_25-action_823 (195) = happyGoto action_26-action_823 (198) = happyGoto action_27-action_823 (219) = happyGoto action_29-action_823 (220) = happyGoto action_30-action_823 (221) = happyGoto action_106-action_823 (227) = happyGoto action_32-action_823 (229) = happyGoto action_33-action_823 (230) = happyGoto action_34-action_823 (233) = happyGoto action_35-action_823 _ = happyFail--action_824 (244) = happyShift action_36-action_824 (245) = happyShift action_37-action_824 (246) = happyShift action_38-action_824 (251) = happyShift action_39-action_824 (253) = happyShift action_40-action_824 (254) = happyShift action_41-action_824 (261) = happyShift action_45-action_824 (265) = happyShift action_46-action_824 (269) = happyShift action_47-action_824 (270) = happyShift action_48-action_824 (272) = happyShift action_49-action_824 (273) = happyShift action_50-action_824 (274) = happyShift action_51-action_824 (275) = happyShift action_52-action_824 (276) = happyShift action_53-action_824 (277) = happyShift action_54-action_824 (278) = happyShift action_55-action_824 (279) = happyShift action_56-action_824 (280) = happyShift action_57-action_824 (281) = happyShift action_58-action_824 (282) = happyShift action_59-action_824 (283) = happyShift action_60-action_824 (284) = happyShift action_61-action_824 (286) = happyShift action_62-action_824 (294) = happyShift action_66-action_824 (295) = happyShift action_67-action_824 (296) = happyShift action_68-action_824 (311) = happyShift action_69-action_824 (317) = happyShift action_70-action_824 (320) = happyShift action_71-action_824 (332) = happyShift action_72-action_824 (334) = happyShift action_73-action_824 (336) = happyShift action_107-action_824 (338) = happyShift action_75-action_824 (340) = happyShift action_76-action_824 (345) = happyShift action_77-action_824 (346) = happyShift action_78-action_824 (347) = happyShift action_79-action_824 (350) = happyShift action_80-action_824 (351) = happyShift action_81-action_824 (354) = happyShift action_82-action_824 (355) = happyShift action_83-action_824 (356) = happyShift action_84-action_824 (357) = happyShift action_85-action_824 (358) = happyShift action_86-action_824 (359) = happyShift action_87-action_824 (360) = happyShift action_88-action_824 (361) = happyShift action_89-action_824 (362) = happyShift action_90-action_824 (363) = happyShift action_91-action_824 (364) = happyShift action_92-action_824 (365) = happyShift action_93-action_824 (366) = happyShift action_94-action_824 (371) = happyShift action_95-action_824 (372) = happyShift action_96-action_824 (373) = happyShift action_97-action_824 (374) = happyShift action_98-action_824 (376) = happyShift action_99-action_824 (377) = happyShift action_100-action_824 (378) = happyShift action_101-action_824 (379) = happyShift action_102-action_824 (380) = happyShift action_103-action_824 (38) = happyGoto action_13-action_824 (142) = happyGoto action_16-action_824 (143) = happyGoto action_854-action_824 (144) = happyGoto action_105-action_824 (145) = happyGoto action_18-action_824 (147) = happyGoto action_19-action_824 (148) = happyGoto action_20-action_824 (149) = happyGoto action_21-action_824 (150) = happyGoto action_22-action_824 (151) = happyGoto action_23-action_824 (152) = happyGoto action_24-action_824 (192) = happyGoto action_25-action_824 (195) = happyGoto action_26-action_824 (198) = happyGoto action_27-action_824 (219) = happyGoto action_29-action_824 (220) = happyGoto action_30-action_824 (221) = happyGoto action_106-action_824 (227) = happyGoto action_32-action_824 (229) = happyGoto action_33-action_824 (230) = happyGoto action_34-action_824 (233) = happyGoto action_35-action_824 _ = happyFail--action_825 _ = happyReduce_377--action_826 (245) = happyShift action_37-action_826 (253) = happyShift action_40-action_826 (265) = happyShift action_46-action_826 (270) = happyShift action_465-action_826 (272) = happyShift action_49-action_826 (273) = happyShift action_50-action_826 (274) = happyShift action_51-action_826 (275) = happyShift action_180-action_826 (276) = happyShift action_181-action_826 (277) = happyShift action_182-action_826 (280) = happyShift action_57-action_826 (281) = happyShift action_58-action_826 (282) = happyShift action_59-action_826 (283) = happyShift action_60-action_826 (286) = happyShift action_62-action_826 (299) = happyShift action_183-action_826 (300) = happyShift action_184-action_826 (321) = happyShift action_185-action_826 (328) = happyShift action_186-action_826 (332) = happyShift action_187-action_826 (334) = happyShift action_188-action_826 (336) = happyShift action_189-action_826 (338) = happyShift action_190-action_826 (345) = happyShift action_191-action_826 (346) = happyShift action_192-action_826 (347) = happyShift action_193-action_826 (351) = happyShift action_194-action_826 (355) = happyShift action_195-action_826 (356) = happyShift action_84-action_826 (358) = happyShift action_196-action_826 (359) = happyShift action_197-action_826 (376) = happyShift action_198-action_826 (377) = happyShift action_199-action_826 (379) = happyShift action_102-action_826 (380) = happyShift action_103-action_826 (96) = happyGoto action_853-action_826 (100) = happyGoto action_164-action_826 (102) = happyGoto action_460-action_826 (103) = happyGoto action_461-action_826 (105) = happyGoto action_462-action_826 (106) = happyGoto action_463-action_826 (107) = happyGoto action_169-action_826 (142) = happyGoto action_170-action_826 (192) = happyGoto action_464-action_826 (202) = happyGoto action_172-action_826 (203) = happyGoto action_173-action_826 (205) = happyGoto action_174-action_826 (206) = happyGoto action_175-action_826 (215) = happyGoto action_176-action_826 (217) = happyGoto action_177-action_826 (227) = happyGoto action_178-action_826 _ = happyFail--action_827 (244) = happyShift action_36-action_827 (245) = happyShift action_37-action_827 (246) = happyShift action_38-action_827 (251) = happyShift action_39-action_827 (253) = happyShift action_40-action_827 (254) = happyShift action_41-action_827 (261) = happyShift action_45-action_827 (265) = happyShift action_46-action_827 (269) = happyShift action_47-action_827 (270) = happyShift action_48-action_827 (272) = happyShift action_49-action_827 (273) = happyShift action_50-action_827 (274) = happyShift action_51-action_827 (275) = happyShift action_52-action_827 (276) = happyShift action_53-action_827 (277) = happyShift action_54-action_827 (278) = happyShift action_55-action_827 (279) = happyShift action_56-action_827 (280) = happyShift action_57-action_827 (281) = happyShift action_58-action_827 (282) = happyShift action_59-action_827 (283) = happyShift action_60-action_827 (284) = happyShift action_61-action_827 (286) = happyShift action_62-action_827 (294) = happyShift action_66-action_827 (295) = happyShift action_67-action_827 (296) = happyShift action_68-action_827 (308) = happyShift action_212-action_827 (311) = happyShift action_69-action_827 (317) = happyShift action_70-action_827 (320) = happyShift action_71-action_827 (321) = happyShift action_214-action_827 (322) = happyShift action_215-action_827 (327) = happyShift action_216-action_827 (332) = happyShift action_72-action_827 (334) = happyShift action_73-action_827 (336) = happyShift action_107-action_827 (338) = happyShift action_75-action_827 (340) = happyShift action_76-action_827 (344) = happyShift action_380-action_827 (345) = happyShift action_77-action_827 (346) = happyShift action_78-action_827 (347) = happyShift action_79-action_827 (348) = happyShift action_221-action_827 (349) = happyShift action_222-action_827 (350) = happyShift action_80-action_827 (351) = happyShift action_81-action_827 (352) = happyShift action_223-action_827 (353) = happyShift action_224-action_827 (354) = happyShift action_82-action_827 (355) = happyShift action_83-action_827 (356) = happyShift action_84-action_827 (357) = happyShift action_85-action_827 (358) = happyShift action_86-action_827 (359) = happyShift action_87-action_827 (360) = happyShift action_88-action_827 (361) = happyShift action_89-action_827 (362) = happyShift action_90-action_827 (363) = happyShift action_91-action_827 (364) = happyShift action_92-action_827 (365) = happyShift action_93-action_827 (366) = happyShift action_94-action_827 (371) = happyShift action_95-action_827 (372) = happyShift action_96-action_827 (373) = happyShift action_97-action_827 (374) = happyShift action_98-action_827 (376) = happyShift action_99-action_827 (377) = happyShift action_100-action_827 (378) = happyShift action_101-action_827 (379) = happyShift action_102-action_827 (380) = happyShift action_103-action_827 (38) = happyGoto action_13-action_827 (142) = happyGoto action_16-action_827 (143) = happyGoto action_367-action_827 (144) = happyGoto action_368-action_827 (145) = happyGoto action_18-action_827 (147) = happyGoto action_19-action_827 (148) = happyGoto action_20-action_827 (149) = happyGoto action_21-action_827 (150) = happyGoto action_22-action_827 (151) = happyGoto action_23-action_827 (152) = happyGoto action_24-action_827 (157) = happyGoto action_852-action_827 (192) = happyGoto action_25-action_827 (195) = happyGoto action_26-action_827 (198) = happyGoto action_27-action_827 (200) = happyGoto action_371-action_827 (212) = happyGoto action_372-action_827 (214) = happyGoto action_373-action_827 (219) = happyGoto action_29-action_827 (220) = happyGoto action_30-action_827 (221) = happyGoto action_106-action_827 (223) = happyGoto action_374-action_827 (224) = happyGoto action_407-action_827 (226) = happyGoto action_408-action_827 (227) = happyGoto action_32-action_827 (228) = happyGoto action_209-action_827 (229) = happyGoto action_33-action_827 (230) = happyGoto action_34-action_827 (231) = happyGoto action_210-action_827 (232) = happyGoto action_211-action_827 (233) = happyGoto action_35-action_827 _ = happyFail--action_828 (245) = happyShift action_37-action_828 (253) = happyShift action_40-action_828 (265) = happyShift action_46-action_828 (270) = happyShift action_48-action_828 (272) = happyShift action_49-action_828 (273) = happyShift action_50-action_828 (274) = happyShift action_51-action_828 (275) = happyShift action_52-action_828 (276) = happyShift action_53-action_828 (277) = happyShift action_54-action_828 (279) = happyShift action_56-action_828 (280) = happyShift action_57-action_828 (281) = happyShift action_58-action_828 (282) = happyShift action_59-action_828 (283) = happyShift action_60-action_828 (286) = happyShift action_62-action_828 (307) = happyShift action_470-action_828 (336) = happyShift action_316-action_828 (346) = happyShift action_78-action_828 (350) = happyShift action_80-action_828 (354) = happyShift action_82-action_828 (188) = happyGoto action_851-action_828 (189) = happyGoto action_468-action_828 (219) = happyGoto action_469-action_828 (220) = happyGoto action_30-action_828 (221) = happyGoto action_106-action_828 (227) = happyGoto action_32-action_828 _ = happyFail--action_829 _ = happyReduce_397--action_830 (327) = happyShift action_850-action_830 _ = happyFail--action_831 (245) = happyShift action_37-action_831 (253) = happyShift action_40-action_831 (265) = happyShift action_46-action_831 (272) = happyShift action_49-action_831 (273) = happyShift action_50-action_831 (274) = happyShift action_51-action_831 (275) = happyShift action_180-action_831 (276) = happyShift action_181-action_831 (277) = happyShift action_182-action_831 (280) = happyShift action_57-action_831 (281) = happyShift action_58-action_831 (282) = happyShift action_59-action_831 (283) = happyShift action_60-action_831 (286) = happyShift action_62-action_831 (299) = happyShift action_183-action_831 (300) = happyShift action_184-action_831 (321) = happyShift action_185-action_831 (328) = happyShift action_186-action_831 (332) = happyShift action_187-action_831 (334) = happyShift action_188-action_831 (336) = happyShift action_189-action_831 (338) = happyShift action_190-action_831 (345) = happyShift action_191-action_831 (346) = happyShift action_192-action_831 (347) = happyShift action_193-action_831 (351) = happyShift action_194-action_831 (355) = happyShift action_195-action_831 (358) = happyShift action_196-action_831 (359) = happyShift action_197-action_831 (376) = happyShift action_198-action_831 (377) = happyShift action_199-action_831 (379) = happyShift action_102-action_831 (380) = happyShift action_103-action_831 (100) = happyGoto action_164-action_831 (104) = happyGoto action_849-action_831 (106) = happyGoto action_346-action_831 (107) = happyGoto action_169-action_831 (142) = happyGoto action_170-action_831 (202) = happyGoto action_172-action_831 (203) = happyGoto action_173-action_831 (205) = happyGoto action_174-action_831 (206) = happyGoto action_175-action_831 (215) = happyGoto action_176-action_831 (217) = happyGoto action_177-action_831 (227) = happyGoto action_178-action_831 _ = happyFail--action_832 (245) = happyShift action_37-action_832 (253) = happyShift action_40-action_832 (265) = happyShift action_46-action_832 (272) = happyShift action_49-action_832 (273) = happyShift action_50-action_832 (274) = happyShift action_51-action_832 (275) = happyShift action_180-action_832 (276) = happyShift action_181-action_832 (277) = happyShift action_182-action_832 (280) = happyShift action_57-action_832 (281) = happyShift action_58-action_832 (282) = happyShift action_59-action_832 (283) = happyShift action_60-action_832 (286) = happyShift action_62-action_832 (299) = happyShift action_183-action_832 (300) = happyShift action_184-action_832 (321) = happyShift action_185-action_832 (328) = happyShift action_186-action_832 (332) = happyShift action_187-action_832 (334) = happyShift action_188-action_832 (336) = happyShift action_189-action_832 (338) = happyShift action_190-action_832 (345) = happyShift action_191-action_832 (346) = happyShift action_192-action_832 (347) = happyShift action_193-action_832 (351) = happyShift action_194-action_832 (355) = happyShift action_195-action_832 (358) = happyShift action_196-action_832 (359) = happyShift action_197-action_832 (376) = happyShift action_198-action_832 (377) = happyShift action_199-action_832 (379) = happyShift action_102-action_832 (380) = happyShift action_103-action_832 (100) = happyGoto action_164-action_832 (104) = happyGoto action_848-action_832 (106) = happyGoto action_346-action_832 (107) = happyGoto action_169-action_832 (142) = happyGoto action_170-action_832 (202) = happyGoto action_172-action_832 (203) = happyGoto action_173-action_832 (205) = happyGoto action_174-action_832 (206) = happyGoto action_175-action_832 (215) = happyGoto action_176-action_832 (217) = happyGoto action_177-action_832 (227) = happyGoto action_178-action_832 _ = happyFail--action_833 (245) = happyShift action_37-action_833 (253) = happyShift action_40-action_833 (265) = happyShift action_46-action_833 (272) = happyShift action_49-action_833 (273) = happyShift action_50-action_833 (274) = happyShift action_51-action_833 (275) = happyShift action_180-action_833 (276) = happyShift action_181-action_833 (277) = happyShift action_182-action_833 (280) = happyShift action_57-action_833 (281) = happyShift action_58-action_833 (282) = happyShift action_59-action_833 (283) = happyShift action_60-action_833 (286) = happyShift action_62-action_833 (299) = happyShift action_183-action_833 (300) = happyShift action_184-action_833 (321) = happyShift action_185-action_833 (328) = happyShift action_186-action_833 (332) = happyShift action_187-action_833 (334) = happyShift action_188-action_833 (336) = happyShift action_189-action_833 (338) = happyShift action_190-action_833 (345) = happyShift action_191-action_833 (346) = happyShift action_192-action_833 (347) = happyShift action_193-action_833 (351) = happyShift action_194-action_833 (355) = happyShift action_195-action_833 (358) = happyShift action_196-action_833 (359) = happyShift action_197-action_833 (376) = happyShift action_198-action_833 (377) = happyShift action_199-action_833 (379) = happyShift action_102-action_833 (380) = happyShift action_103-action_833 (100) = happyGoto action_164-action_833 (104) = happyGoto action_847-action_833 (106) = happyGoto action_346-action_833 (107) = happyGoto action_169-action_833 (142) = happyGoto action_170-action_833 (202) = happyGoto action_172-action_833 (203) = happyGoto action_173-action_833 (205) = happyGoto action_174-action_833 (206) = happyGoto action_175-action_833 (215) = happyGoto action_176-action_833 (217) = happyGoto action_177-action_833 (227) = happyGoto action_178-action_833 _ = happyFail--action_834 (245) = happyShift action_37-action_834 (253) = happyShift action_40-action_834 (265) = happyShift action_46-action_834 (270) = happyShift action_465-action_834 (272) = happyShift action_49-action_834 (273) = happyShift action_50-action_834 (274) = happyShift action_51-action_834 (275) = happyShift action_180-action_834 (276) = happyShift action_181-action_834 (277) = happyShift action_182-action_834 (280) = happyShift action_57-action_834 (281) = happyShift action_58-action_834 (282) = happyShift action_59-action_834 (283) = happyShift action_60-action_834 (286) = happyShift action_62-action_834 (299) = happyShift action_183-action_834 (300) = happyShift action_184-action_834 (321) = happyShift action_185-action_834 (328) = happyShift action_186-action_834 (332) = happyShift action_187-action_834 (334) = happyShift action_188-action_834 (336) = happyShift action_189-action_834 (338) = happyShift action_190-action_834 (345) = happyShift action_191-action_834 (346) = happyShift action_192-action_834 (347) = happyShift action_193-action_834 (351) = happyShift action_194-action_834 (355) = happyShift action_195-action_834 (356) = happyShift action_84-action_834 (358) = happyShift action_196-action_834 (359) = happyShift action_197-action_834 (376) = happyShift action_198-action_834 (377) = happyShift action_199-action_834 (379) = happyShift action_102-action_834 (380) = happyShift action_103-action_834 (100) = happyGoto action_164-action_834 (102) = happyGoto action_846-action_834 (103) = happyGoto action_461-action_834 (105) = happyGoto action_462-action_834 (106) = happyGoto action_463-action_834 (107) = happyGoto action_169-action_834 (142) = happyGoto action_170-action_834 (192) = happyGoto action_464-action_834 (202) = happyGoto action_172-action_834 (203) = happyGoto action_173-action_834 (205) = happyGoto action_174-action_834 (206) = happyGoto action_175-action_834 (215) = happyGoto action_176-action_834 (217) = happyGoto action_177-action_834 (227) = happyGoto action_178-action_834 _ = happyFail--action_835 (245) = happyShift action_37-action_835 (253) = happyShift action_40-action_835 (265) = happyShift action_46-action_835 (272) = happyShift action_49-action_835 (273) = happyShift action_50-action_835 (274) = happyShift action_51-action_835 (275) = happyShift action_180-action_835 (276) = happyShift action_181-action_835 (277) = happyShift action_182-action_835 (280) = happyShift action_57-action_835 (281) = happyShift action_58-action_835 (282) = happyShift action_59-action_835 (283) = happyShift action_60-action_835 (286) = happyShift action_62-action_835 (299) = happyShift action_183-action_835 (300) = happyShift action_184-action_835 (321) = happyShift action_185-action_835 (328) = happyShift action_186-action_835 (332) = happyShift action_187-action_835 (334) = happyShift action_188-action_835 (336) = happyShift action_189-action_835 (338) = happyShift action_190-action_835 (345) = happyShift action_191-action_835 (346) = happyShift action_192-action_835 (347) = happyShift action_193-action_835 (351) = happyShift action_194-action_835 (355) = happyShift action_195-action_835 (358) = happyShift action_196-action_835 (359) = happyShift action_197-action_835 (376) = happyShift action_198-action_835 (377) = happyShift action_199-action_835 (379) = happyShift action_102-action_835 (380) = happyShift action_103-action_835 (100) = happyGoto action_164-action_835 (106) = happyGoto action_845-action_835 (107) = happyGoto action_169-action_835 (142) = happyGoto action_170-action_835 (202) = happyGoto action_172-action_835 (203) = happyGoto action_173-action_835 (205) = happyGoto action_174-action_835 (206) = happyGoto action_175-action_835 (215) = happyGoto action_176-action_835 (217) = happyGoto action_177-action_835 (227) = happyGoto action_178-action_835 _ = happyFail--action_836 (308) = happyShift action_212-action_836 (320) = happyShift action_213-action_836 (321) = happyShift action_214-action_836 (322) = happyShift action_215-action_836 (327) = happyShift action_216-action_836 (332) = happyShift action_254-action_836 (336) = happyShift action_255-action_836 (344) = happyShift action_624-action_836 (347) = happyShift action_79-action_836 (348) = happyShift action_221-action_836 (349) = happyShift action_222-action_836 (351) = happyShift action_81-action_836 (353) = happyShift action_224-action_836 (355) = happyShift action_83-action_836 (200) = happyGoto action_843-action_836 (210) = happyGoto action_844-action_836 (225) = happyGoto action_456-action_836 (226) = happyGoto action_208-action_836 (228) = happyGoto action_209-action_836 (229) = happyGoto action_253-action_836 (230) = happyGoto action_34-action_836 (231) = happyGoto action_210-action_836 (232) = happyGoto action_211-action_836 _ = happyFail--action_837 (245) = happyShift action_37-action_837 (253) = happyShift action_40-action_837 (265) = happyShift action_46-action_837 (270) = happyShift action_465-action_837 (272) = happyShift action_49-action_837 (273) = happyShift action_50-action_837 (274) = happyShift action_51-action_837 (275) = happyShift action_180-action_837 (276) = happyShift action_181-action_837 (277) = happyShift action_182-action_837 (280) = happyShift action_57-action_837 (281) = happyShift action_58-action_837 (282) = happyShift action_59-action_837 (283) = happyShift action_60-action_837 (286) = happyShift action_62-action_837 (299) = happyShift action_183-action_837 (300) = happyShift action_184-action_837 (321) = happyShift action_185-action_837 (328) = happyShift action_186-action_837 (332) = happyShift action_187-action_837 (334) = happyShift action_188-action_837 (336) = happyShift action_189-action_837 (338) = happyShift action_190-action_837 (345) = happyShift action_191-action_837 (346) = happyShift action_192-action_837 (347) = happyShift action_193-action_837 (351) = happyShift action_194-action_837 (355) = happyShift action_195-action_837 (356) = happyShift action_84-action_837 (358) = happyShift action_196-action_837 (359) = happyShift action_197-action_837 (376) = happyShift action_198-action_837 (377) = happyShift action_199-action_837 (379) = happyShift action_102-action_837 (380) = happyShift action_103-action_837 (100) = happyGoto action_164-action_837 (102) = happyGoto action_842-action_837 (103) = happyGoto action_461-action_837 (105) = happyGoto action_462-action_837 (106) = happyGoto action_463-action_837 (107) = happyGoto action_169-action_837 (142) = happyGoto action_170-action_837 (192) = happyGoto action_464-action_837 (202) = happyGoto action_172-action_837 (203) = happyGoto action_173-action_837 (205) = happyGoto action_174-action_837 (206) = happyGoto action_175-action_837 (215) = happyGoto action_176-action_837 (217) = happyGoto action_177-action_837 (227) = happyGoto action_178-action_837 _ = happyFail--action_838 (344) = happyShift action_841-action_838 _ = happyFail--action_839 (308) = happyShift action_212-action_839 (320) = happyShift action_213-action_839 (321) = happyShift action_214-action_839 (322) = happyShift action_215-action_839 (327) = happyShift action_216-action_839 (344) = happyShift action_458-action_839 (348) = happyShift action_221-action_839 (349) = happyShift action_222-action_839 (199) = happyGoto action_453-action_839 (209) = happyGoto action_840-action_839 (210) = happyGoto action_455-action_839 (225) = happyGoto action_456-action_839 (226) = happyGoto action_208-action_839 (228) = happyGoto action_209-action_839 (232) = happyGoto action_457-action_839 _ = happyFail--action_840 _ = happyReduce_89--action_841 _ = happyReduce_533--action_842 _ = happyReduce_236--action_843 (245) = happyShift action_37-action_843 (253) = happyShift action_40-action_843 (265) = happyShift action_46-action_843 (272) = happyShift action_49-action_843 (273) = happyShift action_50-action_843 (274) = happyShift action_51-action_843 (275) = happyShift action_180-action_843 (276) = happyShift action_181-action_843 (277) = happyShift action_182-action_843 (280) = happyShift action_57-action_843 (281) = happyShift action_58-action_843 (282) = happyShift action_59-action_843 (283) = happyShift action_60-action_843 (286) = happyShift action_62-action_843 (299) = happyShift action_183-action_843 (300) = happyShift action_184-action_843 (321) = happyShift action_185-action_843 (328) = happyShift action_186-action_843 (332) = happyShift action_187-action_843 (334) = happyShift action_188-action_843 (336) = happyShift action_189-action_843 (338) = happyShift action_190-action_843 (345) = happyShift action_191-action_843 (346) = happyShift action_192-action_843 (347) = happyShift action_193-action_843 (351) = happyShift action_194-action_843 (355) = happyShift action_195-action_843 (358) = happyShift action_196-action_843 (359) = happyShift action_197-action_843 (376) = happyShift action_198-action_843 (377) = happyShift action_199-action_843 (379) = happyShift action_102-action_843 (380) = happyShift action_103-action_843 (100) = happyGoto action_164-action_843 (104) = happyGoto action_1034-action_843 (106) = happyGoto action_346-action_843 (107) = happyGoto action_169-action_843 (142) = happyGoto action_170-action_843 (202) = happyGoto action_172-action_843 (203) = happyGoto action_173-action_843 (205) = happyGoto action_174-action_843 (206) = happyGoto action_175-action_843 (215) = happyGoto action_176-action_843 (217) = happyGoto action_177-action_843 (227) = happyGoto action_178-action_843 _ = happyFail--action_844 (245) = happyShift action_37-action_844 (253) = happyShift action_40-action_844 (265) = happyShift action_46-action_844 (272) = happyShift action_49-action_844 (273) = happyShift action_50-action_844 (274) = happyShift action_51-action_844 (275) = happyShift action_180-action_844 (276) = happyShift action_181-action_844 (277) = happyShift action_182-action_844 (280) = happyShift action_57-action_844 (281) = happyShift action_58-action_844 (282) = happyShift action_59-action_844 (283) = happyShift action_60-action_844 (286) = happyShift action_62-action_844 (299) = happyShift action_183-action_844 (300) = happyShift action_184-action_844 (321) = happyShift action_185-action_844 (328) = happyShift action_186-action_844 (332) = happyShift action_187-action_844 (334) = happyShift action_188-action_844 (336) = happyShift action_189-action_844 (338) = happyShift action_190-action_844 (345) = happyShift action_191-action_844 (346) = happyShift action_192-action_844 (347) = happyShift action_193-action_844 (351) = happyShift action_194-action_844 (355) = happyShift action_195-action_844 (358) = happyShift action_196-action_844 (359) = happyShift action_197-action_844 (376) = happyShift action_198-action_844 (377) = happyShift action_199-action_844 (379) = happyShift action_102-action_844 (380) = happyShift action_103-action_844 (100) = happyGoto action_164-action_844 (104) = happyGoto action_1033-action_844 (106) = happyGoto action_346-action_844 (107) = happyGoto action_169-action_844 (142) = happyGoto action_170-action_844 (202) = happyGoto action_172-action_844 (203) = happyGoto action_173-action_844 (205) = happyGoto action_174-action_844 (206) = happyGoto action_175-action_844 (215) = happyGoto action_176-action_844 (217) = happyGoto action_177-action_844 (227) = happyGoto action_178-action_844 _ = happyFail--action_845 (245) = happyShift action_37-action_845 (253) = happyShift action_40-action_845 (265) = happyShift action_46-action_845 (272) = happyShift action_49-action_845 (273) = happyShift action_50-action_845 (274) = happyShift action_51-action_845 (275) = happyShift action_180-action_845 (276) = happyShift action_181-action_845 (277) = happyShift action_182-action_845 (280) = happyShift action_57-action_845 (281) = happyShift action_58-action_845 (282) = happyShift action_59-action_845 (283) = happyShift action_60-action_845 (286) = happyShift action_62-action_845 (299) = happyShift action_183-action_845 (300) = happyShift action_184-action_845 (319) = happyReduce_239-action_845 (321) = happyShift action_185-action_845 (328) = happyShift action_186-action_845 (332) = happyShift action_187-action_845 (334) = happyShift action_188-action_845 (336) = happyShift action_189-action_845 (338) = happyShift action_190-action_845 (345) = happyShift action_191-action_845 (346) = happyShift action_192-action_845 (347) = happyShift action_193-action_845 (351) = happyShift action_194-action_845 (355) = happyShift action_195-action_845 (358) = happyShift action_196-action_845 (359) = happyShift action_197-action_845 (376) = happyShift action_198-action_845 (377) = happyShift action_199-action_845 (379) = happyShift action_102-action_845 (380) = happyShift action_103-action_845 (100) = happyGoto action_164-action_845 (107) = happyGoto action_289-action_845 (142) = happyGoto action_170-action_845 (202) = happyGoto action_172-action_845 (203) = happyGoto action_173-action_845 (205) = happyGoto action_174-action_845 (206) = happyGoto action_175-action_845 (215) = happyGoto action_176-action_845 (217) = happyGoto action_177-action_845 (227) = happyGoto action_178-action_845 _ = happyReduce_256--action_846 _ = happyReduce_254--action_847 (368) = happyShift action_147-action_847 (238) = happyGoto action_993-action_847 _ = happyReduce_252--action_848 (368) = happyShift action_147-action_848 (238) = happyGoto action_992-action_848 _ = happyReduce_250--action_849 _ = happyReduce_237--action_850 (245) = happyShift action_37-action_850 (253) = happyShift action_40-action_850 (265) = happyShift action_46-action_850 (270) = happyShift action_465-action_850 (272) = happyShift action_49-action_850 (273) = happyShift action_50-action_850 (274) = happyShift action_51-action_850 (275) = happyShift action_180-action_850 (276) = happyShift action_181-action_850 (277) = happyShift action_182-action_850 (280) = happyShift action_57-action_850 (281) = happyShift action_58-action_850 (282) = happyShift action_59-action_850 (283) = happyShift action_60-action_850 (286) = happyShift action_62-action_850 (299) = happyShift action_183-action_850 (300) = happyShift action_184-action_850 (321) = happyShift action_185-action_850 (328) = happyShift action_186-action_850 (332) = happyShift action_187-action_850 (334) = happyShift action_188-action_850 (336) = happyShift action_189-action_850 (338) = happyShift action_190-action_850 (345) = happyShift action_191-action_850 (346) = happyShift action_192-action_850 (347) = happyShift action_193-action_850 (351) = happyShift action_194-action_850 (355) = happyShift action_195-action_850 (356) = happyShift action_84-action_850 (358) = happyShift action_196-action_850 (359) = happyShift action_197-action_850 (376) = happyShift action_198-action_850 (377) = happyShift action_199-action_850 (379) = happyShift action_102-action_850 (380) = happyShift action_103-action_850 (100) = happyGoto action_164-action_850 (102) = happyGoto action_991-action_850 (103) = happyGoto action_461-action_850 (105) = happyGoto action_462-action_850 (106) = happyGoto action_463-action_850 (107) = happyGoto action_169-action_850 (142) = happyGoto action_170-action_850 (192) = happyGoto action_464-action_850 (202) = happyGoto action_172-action_850 (203) = happyGoto action_173-action_850 (205) = happyGoto action_174-action_850 (206) = happyGoto action_175-action_850 (215) = happyGoto action_176-action_850 (217) = happyGoto action_177-action_850 (227) = happyGoto action_178-action_850 _ = happyFail--action_851 _ = happyReduce_505--action_852 _ = happyReduce_508--action_853 _ = happyReduce_356--action_854 _ = happyReduce_482--action_855 _ = happyReduce_467--action_856 (342) = happyShift action_481-action_856 (146) = happyGoto action_1032-action_856 _ = happyReduce_387--action_857 (343) = happyShift action_1031-action_857 _ = happyReduce_224--action_858 (306) = happyShift action_1030-action_858 _ = happyFail--action_859 _ = happyReduce_180--action_860 (306) = happyShift action_1029-action_860 _ = happyFail--action_861 (320) = happyShift action_1028-action_861 _ = happyFail--action_862 _ = happyReduce_469--action_863 _ = happyReduce_472--action_864 (313) = happyShift action_440-action_864 (315) = happyShift action_1027-action_864 (174) = happyGoto action_1024-action_864 (175) = happyGoto action_1025-action_864 (176) = happyGoto action_1026-action_864 (177) = happyGoto action_439-action_864 _ = happyFail--action_865 (245) = happyShift action_37-action_865 (253) = happyShift action_40-action_865 (265) = happyShift action_46-action_865 (270) = happyShift action_179-action_865 (272) = happyShift action_49-action_865 (273) = happyShift action_50-action_865 (274) = happyShift action_51-action_865 (275) = happyShift action_180-action_865 (276) = happyShift action_181-action_865 (277) = happyShift action_182-action_865 (280) = happyShift action_57-action_865 (281) = happyShift action_58-action_865 (282) = happyShift action_59-action_865 (283) = happyShift action_60-action_865 (286) = happyShift action_62-action_865 (299) = happyShift action_183-action_865 (300) = happyShift action_184-action_865 (321) = happyShift action_185-action_865 (328) = happyShift action_186-action_865 (332) = happyShift action_187-action_865 (334) = happyShift action_188-action_865 (336) = happyShift action_189-action_865 (338) = happyShift action_190-action_865 (345) = happyShift action_191-action_865 (346) = happyShift action_192-action_865 (347) = happyShift action_193-action_865 (351) = happyShift action_194-action_865 (355) = happyShift action_195-action_865 (356) = happyShift action_84-action_865 (358) = happyShift action_196-action_865 (359) = happyShift action_197-action_865 (376) = happyShift action_198-action_865 (377) = happyShift action_199-action_865 (379) = happyShift action_102-action_865 (380) = happyShift action_103-action_865 (95) = happyGoto action_549-action_865 (100) = happyGoto action_164-action_865 (101) = happyGoto action_350-action_865 (103) = happyGoto action_166-action_865 (104) = happyGoto action_167-action_865 (106) = happyGoto action_168-action_865 (107) = happyGoto action_169-action_865 (142) = happyGoto action_170-action_865 (192) = happyGoto action_171-action_865 (202) = happyGoto action_172-action_865 (203) = happyGoto action_173-action_865 (205) = happyGoto action_174-action_865 (206) = happyGoto action_175-action_865 (215) = happyGoto action_176-action_865 (217) = happyGoto action_177-action_865 (227) = happyGoto action_178-action_865 _ = happyFail--action_866 (244) = happyShift action_36-action_866 (245) = happyShift action_37-action_866 (246) = happyShift action_38-action_866 (251) = happyShift action_39-action_866 (253) = happyShift action_40-action_866 (254) = happyShift action_41-action_866 (261) = happyShift action_45-action_866 (265) = happyShift action_46-action_866 (269) = happyShift action_47-action_866 (270) = happyShift action_48-action_866 (272) = happyShift action_49-action_866 (273) = happyShift action_50-action_866 (274) = happyShift action_51-action_866 (275) = happyShift action_52-action_866 (276) = happyShift action_53-action_866 (277) = happyShift action_54-action_866 (278) = happyShift action_55-action_866 (279) = happyShift action_56-action_866 (280) = happyShift action_57-action_866 (281) = happyShift action_58-action_866 (282) = happyShift action_59-action_866 (283) = happyShift action_60-action_866 (284) = happyShift action_61-action_866 (286) = happyShift action_62-action_866 (294) = happyShift action_66-action_866 (295) = happyShift action_67-action_866 (296) = happyShift action_68-action_866 (311) = happyShift action_69-action_866 (317) = happyShift action_70-action_866 (320) = happyShift action_71-action_866 (321) = happyShift action_158-action_866 (332) = happyShift action_72-action_866 (334) = happyShift action_73-action_866 (336) = happyShift action_107-action_866 (338) = happyShift action_75-action_866 (340) = happyShift action_76-action_866 (345) = happyShift action_77-action_866 (346) = happyShift action_78-action_866 (347) = happyShift action_79-action_866 (350) = happyShift action_80-action_866 (351) = happyShift action_81-action_866 (354) = happyShift action_82-action_866 (355) = happyShift action_83-action_866 (356) = happyShift action_84-action_866 (357) = happyShift action_85-action_866 (358) = happyShift action_86-action_866 (359) = happyShift action_87-action_866 (360) = happyShift action_88-action_866 (361) = happyShift action_89-action_866 (362) = happyShift action_90-action_866 (363) = happyShift action_91-action_866 (364) = happyShift action_92-action_866 (365) = happyShift action_93-action_866 (366) = happyShift action_94-action_866 (371) = happyShift action_95-action_866 (372) = happyShift action_96-action_866 (373) = happyShift action_97-action_866 (374) = happyShift action_98-action_866 (376) = happyShift action_99-action_866 (377) = happyShift action_100-action_866 (378) = happyShift action_101-action_866 (379) = happyShift action_102-action_866 (380) = happyShift action_103-action_866 (38) = happyGoto action_13-action_866 (142) = happyGoto action_16-action_866 (143) = happyGoto action_805-action_866 (144) = happyGoto action_105-action_866 (145) = happyGoto action_18-action_866 (147) = happyGoto action_19-action_866 (148) = happyGoto action_20-action_866 (149) = happyGoto action_21-action_866 (150) = happyGoto action_22-action_866 (151) = happyGoto action_23-action_866 (152) = happyGoto action_24-action_866 (173) = happyGoto action_1023-action_866 (178) = happyGoto action_809-action_866 (192) = happyGoto action_25-action_866 (195) = happyGoto action_26-action_866 (198) = happyGoto action_27-action_866 (219) = happyGoto action_29-action_866 (220) = happyGoto action_30-action_866 (221) = happyGoto action_106-action_866 (227) = happyGoto action_32-action_866 (229) = happyGoto action_33-action_866 (230) = happyGoto action_34-action_866 (233) = happyGoto action_35-action_866 _ = happyReduce_474--action_867 _ = happyReduce_470--action_868 _ = happyReduce_219--action_869 (244) = happyShift action_36-action_869 (245) = happyShift action_37-action_869 (246) = happyShift action_38-action_869 (251) = happyShift action_39-action_869 (253) = happyShift action_40-action_869 (254) = happyShift action_41-action_869 (261) = happyShift action_45-action_869 (265) = happyShift action_46-action_869 (269) = happyShift action_47-action_869 (270) = happyShift action_48-action_869 (272) = happyShift action_49-action_869 (273) = happyShift action_50-action_869 (274) = happyShift action_51-action_869 (275) = happyShift action_52-action_869 (276) = happyShift action_53-action_869 (277) = happyShift action_54-action_869 (278) = happyShift action_55-action_869 (279) = happyShift action_56-action_869 (280) = happyShift action_57-action_869 (281) = happyShift action_58-action_869 (282) = happyShift action_59-action_869 (283) = happyShift action_60-action_869 (284) = happyShift action_61-action_869 (286) = happyShift action_62-action_869 (294) = happyShift action_66-action_869 (295) = happyShift action_67-action_869 (296) = happyShift action_68-action_869 (311) = happyShift action_69-action_869 (317) = happyShift action_70-action_869 (320) = happyShift action_71-action_869 (332) = happyShift action_72-action_869 (334) = happyShift action_73-action_869 (336) = happyShift action_107-action_869 (338) = happyShift action_75-action_869 (340) = happyShift action_76-action_869 (345) = happyShift action_77-action_869 (346) = happyShift action_78-action_869 (347) = happyShift action_79-action_869 (350) = happyShift action_80-action_869 (351) = happyShift action_81-action_869 (354) = happyShift action_82-action_869 (355) = happyShift action_83-action_869 (356) = happyShift action_84-action_869 (357) = happyShift action_85-action_869 (358) = happyShift action_86-action_869 (359) = happyShift action_87-action_869 (360) = happyShift action_88-action_869 (361) = happyShift action_89-action_869 (362) = happyShift action_90-action_869 (363) = happyShift action_91-action_869 (364) = happyShift action_92-action_869 (365) = happyShift action_93-action_869 (366) = happyShift action_94-action_869 (371) = happyShift action_95-action_869 (372) = happyShift action_96-action_869 (373) = happyShift action_97-action_869 (374) = happyShift action_98-action_869 (376) = happyShift action_99-action_869 (377) = happyShift action_100-action_869 (378) = happyShift action_101-action_869 (379) = happyShift action_102-action_869 (380) = happyShift action_103-action_869 (38) = happyGoto action_13-action_869 (142) = happyGoto action_16-action_869 (143) = happyGoto action_1022-action_869 (144) = happyGoto action_105-action_869 (145) = happyGoto action_18-action_869 (147) = happyGoto action_19-action_869 (148) = happyGoto action_20-action_869 (149) = happyGoto action_21-action_869 (150) = happyGoto action_22-action_869 (151) = happyGoto action_23-action_869 (152) = happyGoto action_24-action_869 (192) = happyGoto action_25-action_869 (195) = happyGoto action_26-action_869 (198) = happyGoto action_27-action_869 (219) = happyGoto action_29-action_869 (220) = happyGoto action_30-action_869 (221) = happyGoto action_106-action_869 (227) = happyGoto action_32-action_869 (229) = happyGoto action_33-action_869 (230) = happyGoto action_34-action_869 (233) = happyGoto action_35-action_869 _ = happyFail--action_870 (244) = happyShift action_36-action_870 (245) = happyShift action_37-action_870 (246) = happyShift action_38-action_870 (251) = happyShift action_39-action_870 (253) = happyShift action_40-action_870 (254) = happyShift action_41-action_870 (261) = happyShift action_45-action_870 (265) = happyShift action_46-action_870 (269) = happyShift action_47-action_870 (270) = happyShift action_48-action_870 (272) = happyShift action_49-action_870 (273) = happyShift action_50-action_870 (274) = happyShift action_51-action_870 (275) = happyShift action_52-action_870 (276) = happyShift action_53-action_870 (277) = happyShift action_54-action_870 (278) = happyShift action_55-action_870 (279) = happyShift action_56-action_870 (280) = happyShift action_57-action_870 (281) = happyShift action_58-action_870 (282) = happyShift action_59-action_870 (283) = happyShift action_60-action_870 (284) = happyShift action_61-action_870 (286) = happyShift action_62-action_870 (294) = happyShift action_66-action_870 (295) = happyShift action_67-action_870 (296) = happyShift action_68-action_870 (311) = happyShift action_69-action_870 (317) = happyShift action_70-action_870 (320) = happyShift action_71-action_870 (332) = happyShift action_72-action_870 (334) = happyShift action_73-action_870 (336) = happyShift action_107-action_870 (338) = happyShift action_75-action_870 (340) = happyShift action_76-action_870 (345) = happyShift action_77-action_870 (346) = happyShift action_78-action_870 (347) = happyShift action_79-action_870 (350) = happyShift action_80-action_870 (351) = happyShift action_81-action_870 (354) = happyShift action_82-action_870 (355) = happyShift action_83-action_870 (356) = happyShift action_84-action_870 (357) = happyShift action_85-action_870 (358) = happyShift action_86-action_870 (359) = happyShift action_87-action_870 (360) = happyShift action_88-action_870 (361) = happyShift action_89-action_870 (362) = happyShift action_90-action_870 (363) = happyShift action_91-action_870 (364) = happyShift action_92-action_870 (365) = happyShift action_93-action_870 (366) = happyShift action_94-action_870 (371) = happyShift action_95-action_870 (372) = happyShift action_96-action_870 (373) = happyShift action_97-action_870 (374) = happyShift action_98-action_870 (376) = happyShift action_99-action_870 (377) = happyShift action_100-action_870 (378) = happyShift action_101-action_870 (379) = happyShift action_102-action_870 (380) = happyShift action_103-action_870 (38) = happyGoto action_13-action_870 (142) = happyGoto action_16-action_870 (143) = happyGoto action_1021-action_870 (144) = happyGoto action_105-action_870 (145) = happyGoto action_18-action_870 (147) = happyGoto action_19-action_870 (148) = happyGoto action_20-action_870 (149) = happyGoto action_21-action_870 (150) = happyGoto action_22-action_870 (151) = happyGoto action_23-action_870 (152) = happyGoto action_24-action_870 (192) = happyGoto action_25-action_870 (195) = happyGoto action_26-action_870 (198) = happyGoto action_27-action_870 (219) = happyGoto action_29-action_870 (220) = happyGoto action_30-action_870 (221) = happyGoto action_106-action_870 (227) = happyGoto action_32-action_870 (229) = happyGoto action_33-action_870 (230) = happyGoto action_34-action_870 (233) = happyGoto action_35-action_870 _ = happyReduce_443--action_871 (287) = happyShift action_1020-action_871 _ = happyReduce_456--action_872 (287) = happyShift action_1018-action_872 (288) = happyShift action_1019-action_872 _ = happyReduce_615--action_873 (244) = happyShift action_36-action_873 (245) = happyShift action_37-action_873 (246) = happyShift action_38-action_873 (251) = happyShift action_39-action_873 (253) = happyShift action_40-action_873 (254) = happyShift action_41-action_873 (261) = happyShift action_156-action_873 (265) = happyShift action_46-action_873 (266) = happyShift action_796-action_873 (269) = happyShift action_47-action_873 (270) = happyShift action_48-action_873 (272) = happyShift action_49-action_873 (273) = happyShift action_50-action_873 (274) = happyShift action_51-action_873 (275) = happyShift action_52-action_873 (276) = happyShift action_53-action_873 (277) = happyShift action_54-action_873 (278) = happyShift action_55-action_873 (279) = happyShift action_56-action_873 (280) = happyShift action_57-action_873 (281) = happyShift action_58-action_873 (282) = happyShift action_59-action_873 (283) = happyShift action_60-action_873 (284) = happyShift action_61-action_873 (286) = happyShift action_62-action_873 (294) = happyShift action_66-action_873 (295) = happyShift action_67-action_873 (296) = happyShift action_68-action_873 (311) = happyShift action_69-action_873 (317) = happyShift action_70-action_873 (320) = happyShift action_71-action_873 (321) = happyShift action_158-action_873 (332) = happyShift action_72-action_873 (334) = happyShift action_73-action_873 (336) = happyShift action_107-action_873 (338) = happyShift action_75-action_873 (340) = happyShift action_76-action_873 (345) = happyShift action_77-action_873 (346) = happyShift action_78-action_873 (347) = happyShift action_79-action_873 (350) = happyShift action_80-action_873 (351) = happyShift action_81-action_873 (354) = happyShift action_82-action_873 (355) = happyShift action_83-action_873 (356) = happyShift action_84-action_873 (357) = happyShift action_85-action_873 (358) = happyShift action_86-action_873 (359) = happyShift action_87-action_873 (360) = happyShift action_88-action_873 (361) = happyShift action_89-action_873 (362) = happyShift action_90-action_873 (363) = happyShift action_91-action_873 (364) = happyShift action_92-action_873 (365) = happyShift action_93-action_873 (366) = happyShift action_94-action_873 (371) = happyShift action_95-action_873 (372) = happyShift action_96-action_873 (373) = happyShift action_97-action_873 (374) = happyShift action_98-action_873 (376) = happyShift action_99-action_873 (377) = happyShift action_100-action_873 (378) = happyShift action_101-action_873 (379) = happyShift action_102-action_873 (380) = happyShift action_103-action_873 (38) = happyGoto action_13-action_873 (142) = happyGoto action_16-action_873 (143) = happyGoto action_152-action_873 (144) = happyGoto action_105-action_873 (145) = happyGoto action_18-action_873 (147) = happyGoto action_19-action_873 (148) = happyGoto action_20-action_873 (149) = happyGoto action_21-action_873 (150) = happyGoto action_22-action_873 (151) = happyGoto action_23-action_873 (152) = happyGoto action_24-action_873 (164) = happyGoto action_1017-action_873 (165) = happyGoto action_793-action_873 (166) = happyGoto action_794-action_873 (178) = happyGoto action_153-action_873 (186) = happyGoto action_795-action_873 (192) = happyGoto action_25-action_873 (195) = happyGoto action_26-action_873 (198) = happyGoto action_27-action_873 (219) = happyGoto action_29-action_873 (220) = happyGoto action_30-action_873 (221) = happyGoto action_106-action_873 (227) = happyGoto action_32-action_873 (229) = happyGoto action_33-action_873 (230) = happyGoto action_34-action_873 (233) = happyGoto action_35-action_873 _ = happyFail--action_874 (244) = happyShift action_36-action_874 (245) = happyShift action_37-action_874 (246) = happyShift action_38-action_874 (251) = happyShift action_39-action_874 (253) = happyShift action_40-action_874 (254) = happyShift action_41-action_874 (261) = happyShift action_156-action_874 (265) = happyShift action_46-action_874 (266) = happyShift action_796-action_874 (269) = happyShift action_47-action_874 (270) = happyShift action_48-action_874 (272) = happyShift action_49-action_874 (273) = happyShift action_50-action_874 (274) = happyShift action_51-action_874 (275) = happyShift action_52-action_874 (276) = happyShift action_53-action_874 (277) = happyShift action_54-action_874 (278) = happyShift action_55-action_874 (279) = happyShift action_56-action_874 (280) = happyShift action_57-action_874 (281) = happyShift action_58-action_874 (282) = happyShift action_59-action_874 (283) = happyShift action_60-action_874 (284) = happyShift action_61-action_874 (286) = happyShift action_62-action_874 (294) = happyShift action_66-action_874 (295) = happyShift action_67-action_874 (296) = happyShift action_68-action_874 (311) = happyShift action_69-action_874 (317) = happyShift action_70-action_874 (320) = happyShift action_71-action_874 (321) = happyShift action_158-action_874 (332) = happyShift action_72-action_874 (334) = happyShift action_73-action_874 (336) = happyShift action_107-action_874 (338) = happyShift action_75-action_874 (340) = happyShift action_76-action_874 (345) = happyShift action_77-action_874 (346) = happyShift action_78-action_874 (347) = happyShift action_79-action_874 (350) = happyShift action_80-action_874 (351) = happyShift action_81-action_874 (354) = happyShift action_82-action_874 (355) = happyShift action_83-action_874 (356) = happyShift action_84-action_874 (357) = happyShift action_85-action_874 (358) = happyShift action_86-action_874 (359) = happyShift action_87-action_874 (360) = happyShift action_88-action_874 (361) = happyShift action_89-action_874 (362) = happyShift action_90-action_874 (363) = happyShift action_91-action_874 (364) = happyShift action_92-action_874 (365) = happyShift action_93-action_874 (366) = happyShift action_94-action_874 (371) = happyShift action_95-action_874 (372) = happyShift action_96-action_874 (373) = happyShift action_97-action_874 (374) = happyShift action_98-action_874 (376) = happyShift action_99-action_874 (377) = happyShift action_100-action_874 (378) = happyShift action_101-action_874 (379) = happyShift action_102-action_874 (380) = happyShift action_103-action_874 (38) = happyGoto action_13-action_874 (142) = happyGoto action_16-action_874 (143) = happyGoto action_152-action_874 (144) = happyGoto action_105-action_874 (145) = happyGoto action_18-action_874 (147) = happyGoto action_19-action_874 (148) = happyGoto action_20-action_874 (149) = happyGoto action_21-action_874 (150) = happyGoto action_22-action_874 (151) = happyGoto action_23-action_874 (152) = happyGoto action_24-action_874 (166) = happyGoto action_1015-action_874 (178) = happyGoto action_153-action_874 (186) = happyGoto action_1016-action_874 (192) = happyGoto action_25-action_874 (195) = happyGoto action_26-action_874 (198) = happyGoto action_27-action_874 (219) = happyGoto action_29-action_874 (220) = happyGoto action_30-action_874 (221) = happyGoto action_106-action_874 (227) = happyGoto action_32-action_874 (229) = happyGoto action_33-action_874 (230) = happyGoto action_34-action_874 (233) = happyGoto action_35-action_874 _ = happyFail--action_875 (244) = happyShift action_36-action_875 (245) = happyShift action_37-action_875 (246) = happyShift action_38-action_875 (251) = happyShift action_39-action_875 (253) = happyShift action_40-action_875 (254) = happyShift action_41-action_875 (261) = happyShift action_45-action_875 (265) = happyShift action_46-action_875 (269) = happyShift action_47-action_875 (270) = happyShift action_48-action_875 (272) = happyShift action_49-action_875 (273) = happyShift action_50-action_875 (274) = happyShift action_51-action_875 (275) = happyShift action_52-action_875 (276) = happyShift action_53-action_875 (277) = happyShift action_54-action_875 (278) = happyShift action_55-action_875 (279) = happyShift action_56-action_875 (280) = happyShift action_57-action_875 (281) = happyShift action_58-action_875 (282) = happyShift action_59-action_875 (283) = happyShift action_60-action_875 (284) = happyShift action_61-action_875 (286) = happyShift action_62-action_875 (294) = happyShift action_66-action_875 (295) = happyShift action_67-action_875 (296) = happyShift action_68-action_875 (311) = happyShift action_69-action_875 (317) = happyShift action_70-action_875 (320) = happyShift action_71-action_875 (332) = happyShift action_72-action_875 (334) = happyShift action_73-action_875 (336) = happyShift action_107-action_875 (338) = happyShift action_75-action_875 (340) = happyShift action_76-action_875 (345) = happyShift action_77-action_875 (346) = happyShift action_78-action_875 (347) = happyShift action_79-action_875 (350) = happyShift action_80-action_875 (351) = happyShift action_81-action_875 (354) = happyShift action_82-action_875 (355) = happyShift action_83-action_875 (356) = happyShift action_84-action_875 (357) = happyShift action_85-action_875 (358) = happyShift action_86-action_875 (359) = happyShift action_87-action_875 (360) = happyShift action_88-action_875 (361) = happyShift action_89-action_875 (362) = happyShift action_90-action_875 (363) = happyShift action_91-action_875 (364) = happyShift action_92-action_875 (365) = happyShift action_93-action_875 (366) = happyShift action_94-action_875 (371) = happyShift action_95-action_875 (372) = happyShift action_96-action_875 (373) = happyShift action_97-action_875 (374) = happyShift action_98-action_875 (376) = happyShift action_99-action_875 (377) = happyShift action_100-action_875 (378) = happyShift action_101-action_875 (379) = happyShift action_102-action_875 (380) = happyShift action_103-action_875 (38) = happyGoto action_13-action_875 (142) = happyGoto action_16-action_875 (143) = happyGoto action_1014-action_875 (144) = happyGoto action_105-action_875 (145) = happyGoto action_18-action_875 (147) = happyGoto action_19-action_875 (148) = happyGoto action_20-action_875 (149) = happyGoto action_21-action_875 (150) = happyGoto action_22-action_875 (151) = happyGoto action_23-action_875 (152) = happyGoto action_24-action_875 (192) = happyGoto action_25-action_875 (195) = happyGoto action_26-action_875 (198) = happyGoto action_27-action_875 (219) = happyGoto action_29-action_875 (220) = happyGoto action_30-action_875 (221) = happyGoto action_106-action_875 (227) = happyGoto action_32-action_875 (229) = happyGoto action_33-action_875 (230) = happyGoto action_34-action_875 (233) = happyGoto action_35-action_875 _ = happyFail--action_876 (268) = happyShift action_1013-action_876 _ = happyFail--action_877 (367) = happyShift action_146-action_877 (369) = happyShift action_148-action_877 (370) = happyShift action_149-action_877 (30) = happyGoto action_1006-action_877 (31) = happyGoto action_1007-action_877 (32) = happyGoto action_1008-action_877 (33) = happyGoto action_1009-action_877 (237) = happyGoto action_1010-action_877 (239) = happyGoto action_1011-action_877 (240) = happyGoto action_1012-action_877 _ = happyReduce_49--action_878 _ = happyReduce_136--action_879 _ = happyReduce_122--action_880 (336) = happyShift action_1005-action_880 (347) = happyShift action_193-action_880 (351) = happyShift action_194-action_880 (355) = happyShift action_195-action_880 (205) = happyGoto action_1004-action_880 (206) = happyGoto action_175-action_880 _ = happyFail--action_881 (250) = happyShift action_880-action_881 (134) = happyGoto action_1003-action_881 _ = happyReduce_337--action_882 (328) = happyShift action_1001-action_882 (330) = happyShift action_1002-action_882 _ = happyFail--action_883 (367) = happyShift action_146-action_883 (127) = happyGoto action_998-action_883 (128) = happyGoto action_999-action_883 (237) = happyGoto action_280-action_883 (243) = happyGoto action_1000-action_883 _ = happyReduce_649--action_884 _ = happyReduce_117--action_885 (250) = happyShift action_880-action_885 (134) = happyGoto action_997-action_885 _ = happyReduce_337--action_886 (245) = happyShift action_37-action_886 (253) = happyShift action_40-action_886 (265) = happyShift action_46-action_886 (272) = happyShift action_49-action_886 (273) = happyShift action_50-action_886 (274) = happyShift action_51-action_886 (275) = happyShift action_180-action_886 (276) = happyShift action_181-action_886 (277) = happyShift action_182-action_886 (280) = happyShift action_57-action_886 (281) = happyShift action_58-action_886 (282) = happyShift action_59-action_886 (283) = happyShift action_60-action_886 (286) = happyShift action_62-action_886 (299) = happyShift action_183-action_886 (300) = happyShift action_184-action_886 (321) = happyShift action_185-action_886 (328) = happyShift action_186-action_886 (332) = happyShift action_187-action_886 (334) = happyShift action_188-action_886 (336) = happyShift action_189-action_886 (338) = happyShift action_190-action_886 (345) = happyShift action_191-action_886 (346) = happyShift action_192-action_886 (347) = happyShift action_193-action_886 (351) = happyShift action_194-action_886 (355) = happyShift action_195-action_886 (358) = happyShift action_196-action_886 (359) = happyShift action_197-action_886 (376) = happyShift action_198-action_886 (377) = happyShift action_199-action_886 (379) = happyShift action_102-action_886 (380) = happyShift action_103-action_886 (100) = happyGoto action_164-action_886 (104) = happyGoto action_996-action_886 (106) = happyGoto action_346-action_886 (107) = happyGoto action_169-action_886 (142) = happyGoto action_170-action_886 (202) = happyGoto action_172-action_886 (203) = happyGoto action_173-action_886 (205) = happyGoto action_174-action_886 (206) = happyGoto action_175-action_886 (215) = happyGoto action_176-action_886 (217) = happyGoto action_177-action_886 (227) = happyGoto action_178-action_886 _ = happyFail--action_887 (245) = happyShift action_37-action_887 (253) = happyShift action_40-action_887 (265) = happyShift action_46-action_887 (272) = happyShift action_49-action_887 (273) = happyShift action_50-action_887 (274) = happyShift action_51-action_887 (275) = happyShift action_180-action_887 (276) = happyShift action_181-action_887 (277) = happyShift action_182-action_887 (280) = happyShift action_57-action_887 (281) = happyShift action_58-action_887 (282) = happyShift action_59-action_887 (283) = happyShift action_60-action_887 (286) = happyShift action_62-action_887 (299) = happyShift action_183-action_887 (300) = happyShift action_184-action_887 (321) = happyShift action_185-action_887 (328) = happyShift action_186-action_887 (332) = happyShift action_187-action_887 (334) = happyShift action_188-action_887 (336) = happyShift action_189-action_887 (338) = happyShift action_190-action_887 (345) = happyShift action_191-action_887 (346) = happyShift action_192-action_887 (347) = happyShift action_193-action_887 (351) = happyShift action_194-action_887 (355) = happyShift action_195-action_887 (358) = happyShift action_196-action_887 (359) = happyShift action_197-action_887 (376) = happyShift action_198-action_887 (377) = happyShift action_199-action_887 (379) = happyShift action_102-action_887 (380) = happyShift action_103-action_887 (100) = happyGoto action_164-action_887 (104) = happyGoto action_995-action_887 (106) = happyGoto action_346-action_887 (107) = happyGoto action_169-action_887 (142) = happyGoto action_170-action_887 (202) = happyGoto action_172-action_887 (203) = happyGoto action_173-action_887 (205) = happyGoto action_174-action_887 (206) = happyGoto action_175-action_887 (215) = happyGoto action_176-action_887 (217) = happyGoto action_177-action_887 (227) = happyGoto action_178-action_887 _ = happyFail--action_888 (245) = happyShift action_37-action_888 (253) = happyShift action_40-action_888 (265) = happyShift action_46-action_888 (272) = happyShift action_49-action_888 (273) = happyShift action_50-action_888 (274) = happyShift action_51-action_888 (275) = happyShift action_180-action_888 (276) = happyShift action_181-action_888 (277) = happyShift action_182-action_888 (280) = happyShift action_57-action_888 (281) = happyShift action_58-action_888 (282) = happyShift action_59-action_888 (283) = happyShift action_60-action_888 (286) = happyShift action_62-action_888 (299) = happyShift action_183-action_888 (300) = happyShift action_184-action_888 (310) = happyReduce_245-action_888 (313) = happyReduce_245-action_888 (319) = happyReduce_239-action_888 (321) = happyShift action_185-action_888 (328) = happyShift action_186-action_888 (332) = happyShift action_187-action_888 (334) = happyShift action_188-action_888 (336) = happyShift action_189-action_888 (338) = happyShift action_190-action_888 (345) = happyShift action_191-action_888 (346) = happyShift action_192-action_888 (347) = happyShift action_193-action_888 (351) = happyShift action_194-action_888 (355) = happyShift action_195-action_888 (358) = happyShift action_196-action_888 (359) = happyShift action_197-action_888 (376) = happyShift action_198-action_888 (377) = happyShift action_199-action_888 (379) = happyShift action_102-action_888 (380) = happyShift action_103-action_888 (100) = happyGoto action_164-action_888 (107) = happyGoto action_289-action_888 (142) = happyGoto action_170-action_888 (202) = happyGoto action_172-action_888 (203) = happyGoto action_173-action_888 (205) = happyGoto action_174-action_888 (206) = happyGoto action_175-action_888 (215) = happyGoto action_176-action_888 (217) = happyGoto action_177-action_888 (227) = happyGoto action_178-action_888 _ = happyReduce_256--action_889 (245) = happyShift action_37-action_889 (253) = happyShift action_40-action_889 (265) = happyShift action_46-action_889 (270) = happyShift action_465-action_889 (272) = happyShift action_49-action_889 (273) = happyShift action_50-action_889 (274) = happyShift action_51-action_889 (275) = happyShift action_180-action_889 (276) = happyShift action_181-action_889 (277) = happyShift action_182-action_889 (280) = happyShift action_57-action_889 (281) = happyShift action_58-action_889 (282) = happyShift action_59-action_889 (283) = happyShift action_60-action_889 (286) = happyShift action_62-action_889 (299) = happyShift action_183-action_889 (300) = happyShift action_184-action_889 (321) = happyShift action_185-action_889 (328) = happyShift action_186-action_889 (332) = happyShift action_187-action_889 (334) = happyShift action_188-action_889 (336) = happyShift action_189-action_889 (338) = happyShift action_190-action_889 (345) = happyShift action_191-action_889 (346) = happyShift action_192-action_889 (347) = happyShift action_193-action_889 (351) = happyShift action_194-action_889 (355) = happyShift action_195-action_889 (356) = happyShift action_84-action_889 (358) = happyShift action_196-action_889 (359) = happyShift action_197-action_889 (376) = happyShift action_198-action_889 (377) = happyShift action_199-action_889 (379) = happyShift action_102-action_889 (380) = happyShift action_103-action_889 (100) = happyGoto action_164-action_889 (102) = happyGoto action_994-action_889 (103) = happyGoto action_461-action_889 (105) = happyGoto action_462-action_889 (106) = happyGoto action_463-action_889 (107) = happyGoto action_169-action_889 (142) = happyGoto action_170-action_889 (192) = happyGoto action_464-action_889 (202) = happyGoto action_172-action_889 (203) = happyGoto action_173-action_889 (205) = happyGoto action_174-action_889 (206) = happyGoto action_175-action_889 (215) = happyGoto action_176-action_889 (217) = happyGoto action_177-action_889 (227) = happyGoto action_178-action_889 _ = happyFail--action_890 (310) = happyReduce_243-action_890 (313) = happyReduce_243-action_890 (368) = happyShift action_147-action_890 (238) = happyGoto action_993-action_890 _ = happyReduce_252--action_891 (310) = happyReduce_242-action_891 (313) = happyReduce_242-action_891 (368) = happyShift action_147-action_891 (238) = happyGoto action_992-action_891 _ = happyReduce_250--action_892 (310) = happyReduce_233-action_892 (313) = happyReduce_233-action_892 _ = happyReduce_237--action_893 (245) = happyShift action_37-action_893 (253) = happyShift action_40-action_893 (265) = happyShift action_46-action_893 (270) = happyShift action_553-action_893 (272) = happyShift action_49-action_893 (273) = happyShift action_50-action_893 (274) = happyShift action_51-action_893 (275) = happyShift action_180-action_893 (276) = happyShift action_181-action_893 (277) = happyShift action_182-action_893 (280) = happyShift action_57-action_893 (281) = happyShift action_58-action_893 (282) = happyShift action_59-action_893 (283) = happyShift action_60-action_893 (286) = happyShift action_62-action_893 (299) = happyShift action_183-action_893 (300) = happyShift action_184-action_893 (321) = happyShift action_185-action_893 (328) = happyShift action_186-action_893 (332) = happyShift action_187-action_893 (334) = happyShift action_188-action_893 (336) = happyShift action_189-action_893 (338) = happyShift action_190-action_893 (345) = happyShift action_191-action_893 (346) = happyShift action_192-action_893 (347) = happyShift action_193-action_893 (351) = happyShift action_194-action_893 (355) = happyShift action_195-action_893 (356) = happyShift action_84-action_893 (358) = happyShift action_196-action_893 (359) = happyShift action_197-action_893 (376) = happyShift action_198-action_893 (377) = happyShift action_199-action_893 (379) = happyShift action_102-action_893 (380) = happyShift action_103-action_893 (100) = happyGoto action_164-action_893 (101) = happyGoto action_692-action_893 (102) = happyGoto action_991-action_893 (103) = happyGoto action_550-action_893 (104) = happyGoto action_167-action_893 (105) = happyGoto action_462-action_893 (106) = happyGoto action_551-action_893 (107) = happyGoto action_169-action_893 (142) = happyGoto action_170-action_893 (192) = happyGoto action_552-action_893 (202) = happyGoto action_172-action_893 (203) = happyGoto action_173-action_893 (205) = happyGoto action_174-action_893 (206) = happyGoto action_175-action_893 (215) = happyGoto action_176-action_893 (217) = happyGoto action_177-action_893 (227) = happyGoto action_178-action_893 _ = happyFail--action_894 _ = happyReduce_170--action_895 _ = happyReduce_350--action_896 (244) = happyShift action_36-action_896 (245) = happyShift action_37-action_896 (246) = happyShift action_38-action_896 (251) = happyShift action_39-action_896 (253) = happyShift action_40-action_896 (254) = happyShift action_41-action_896 (261) = happyShift action_45-action_896 (265) = happyShift action_46-action_896 (269) = happyShift action_47-action_896 (270) = happyShift action_48-action_896 (272) = happyShift action_49-action_896 (273) = happyShift action_50-action_896 (274) = happyShift action_51-action_896 (275) = happyShift action_52-action_896 (276) = happyShift action_53-action_896 (277) = happyShift action_54-action_896 (278) = happyShift action_55-action_896 (279) = happyShift action_56-action_896 (280) = happyShift action_57-action_896 (281) = happyShift action_58-action_896 (282) = happyShift action_59-action_896 (283) = happyShift action_60-action_896 (284) = happyShift action_61-action_896 (286) = happyShift action_62-action_896 (294) = happyShift action_66-action_896 (295) = happyShift action_67-action_896 (296) = happyShift action_68-action_896 (311) = happyShift action_69-action_896 (317) = happyShift action_70-action_896 (320) = happyShift action_71-action_896 (332) = happyShift action_72-action_896 (334) = happyShift action_73-action_896 (336) = happyShift action_107-action_896 (338) = happyShift action_75-action_896 (340) = happyShift action_76-action_896 (345) = happyShift action_77-action_896 (346) = happyShift action_78-action_896 (347) = happyShift action_79-action_896 (350) = happyShift action_80-action_896 (351) = happyShift action_81-action_896 (354) = happyShift action_82-action_896 (355) = happyShift action_83-action_896 (356) = happyShift action_84-action_896 (357) = happyShift action_85-action_896 (358) = happyShift action_86-action_896 (359) = happyShift action_87-action_896 (360) = happyShift action_88-action_896 (361) = happyShift action_89-action_896 (362) = happyShift action_90-action_896 (363) = happyShift action_91-action_896 (364) = happyShift action_92-action_896 (365) = happyShift action_93-action_896 (366) = happyShift action_94-action_896 (371) = happyShift action_95-action_896 (372) = happyShift action_96-action_896 (373) = happyShift action_97-action_896 (374) = happyShift action_98-action_896 (376) = happyShift action_99-action_896 (377) = happyShift action_100-action_896 (378) = happyShift action_101-action_896 (379) = happyShift action_102-action_896 (380) = happyShift action_103-action_896 (38) = happyGoto action_13-action_896 (142) = happyGoto action_16-action_896 (143) = happyGoto action_990-action_896 (144) = happyGoto action_105-action_896 (145) = happyGoto action_18-action_896 (147) = happyGoto action_19-action_896 (148) = happyGoto action_20-action_896 (149) = happyGoto action_21-action_896 (150) = happyGoto action_22-action_896 (151) = happyGoto action_23-action_896 (152) = happyGoto action_24-action_896 (192) = happyGoto action_25-action_896 (195) = happyGoto action_26-action_896 (198) = happyGoto action_27-action_896 (219) = happyGoto action_29-action_896 (220) = happyGoto action_30-action_896 (221) = happyGoto action_106-action_896 (227) = happyGoto action_32-action_896 (229) = happyGoto action_33-action_896 (230) = happyGoto action_34-action_896 (233) = happyGoto action_35-action_896 _ = happyFail--action_897 _ = happyReduce_149--action_898 (244) = happyShift action_36-action_898 (245) = happyShift action_37-action_898 (246) = happyShift action_38-action_898 (248) = happyShift action_986-action_898 (249) = happyShift action_987-action_898 (251) = happyShift action_39-action_898 (253) = happyShift action_40-action_898 (254) = happyShift action_41-action_898 (257) = happyShift action_42-action_898 (258) = happyShift action_43-action_898 (259) = happyShift action_44-action_898 (261) = happyShift action_45-action_898 (265) = happyShift action_46-action_898 (267) = happyShift action_988-action_898 (269) = happyShift action_47-action_898 (270) = happyShift action_48-action_898 (272) = happyShift action_49-action_898 (273) = happyShift action_50-action_898 (274) = happyShift action_51-action_898 (275) = happyShift action_52-action_898 (276) = happyShift action_53-action_898 (277) = happyShift action_54-action_898 (278) = happyShift action_55-action_898 (279) = happyShift action_56-action_898 (280) = happyShift action_57-action_898 (281) = happyShift action_58-action_898 (282) = happyShift action_59-action_898 (283) = happyShift action_60-action_898 (284) = happyShift action_61-action_898 (286) = happyShift action_62-action_898 (289) = happyShift action_63-action_898 (290) = happyShift action_64-action_898 (291) = happyShift action_65-action_898 (294) = happyShift action_66-action_898 (295) = happyShift action_67-action_898 (296) = happyShift action_68-action_898 (311) = happyShift action_69-action_898 (317) = happyShift action_70-action_898 (320) = happyShift action_71-action_898 (321) = happyShift action_145-action_898 (332) = happyShift action_72-action_898 (334) = happyShift action_73-action_898 (336) = happyShift action_74-action_898 (338) = happyShift action_75-action_898 (340) = happyShift action_76-action_898 (345) = happyShift action_77-action_898 (346) = happyShift action_78-action_898 (347) = happyShift action_79-action_898 (350) = happyShift action_80-action_898 (351) = happyShift action_81-action_898 (354) = happyShift action_82-action_898 (355) = happyShift action_83-action_898 (356) = happyShift action_84-action_898 (357) = happyShift action_85-action_898 (358) = happyShift action_86-action_898 (359) = happyShift action_87-action_898 (360) = happyShift action_88-action_898 (361) = happyShift action_89-action_898 (362) = happyShift action_90-action_898 (363) = happyShift action_91-action_898 (364) = happyShift action_92-action_898 (365) = happyShift action_93-action_898 (366) = happyShift action_94-action_898 (367) = happyShift action_146-action_898 (368) = happyShift action_147-action_898 (369) = happyShift action_148-action_898 (370) = happyShift action_149-action_898 (371) = happyShift action_95-action_898 (372) = happyShift action_96-action_898 (373) = happyShift action_97-action_898 (374) = happyShift action_98-action_898 (376) = happyShift action_99-action_898 (377) = happyShift action_100-action_898 (378) = happyShift action_101-action_898 (379) = happyShift action_102-action_898 (380) = happyShift action_103-action_898 (38) = happyGoto action_13-action_898 (49) = happyGoto action_14-action_898 (56) = happyGoto action_982-action_898 (63) = happyGoto action_983-action_898 (64) = happyGoto action_989-action_898 (135) = happyGoto action_121-action_898 (136) = happyGoto action_122-action_898 (137) = happyGoto action_985-action_898 (141) = happyGoto action_124-action_898 (142) = happyGoto action_16-action_898 (144) = happyGoto action_125-action_898 (145) = happyGoto action_18-action_898 (147) = happyGoto action_19-action_898 (148) = happyGoto action_20-action_898 (149) = happyGoto action_21-action_898 (150) = happyGoto action_22-action_898 (151) = happyGoto action_23-action_898 (152) = happyGoto action_24-action_898 (192) = happyGoto action_25-action_898 (195) = happyGoto action_26-action_898 (198) = happyGoto action_27-action_898 (218) = happyGoto action_28-action_898 (219) = happyGoto action_29-action_898 (220) = happyGoto action_30-action_898 (221) = happyGoto action_31-action_898 (227) = happyGoto action_32-action_898 (229) = happyGoto action_33-action_898 (230) = happyGoto action_34-action_898 (233) = happyGoto action_35-action_898 (237) = happyGoto action_126-action_898 (238) = happyGoto action_127-action_898 (239) = happyGoto action_128-action_898 (240) = happyGoto action_129-action_898 _ = happyReduce_146--action_899 (244) = happyShift action_36-action_899 (245) = happyShift action_37-action_899 (246) = happyShift action_38-action_899 (248) = happyShift action_986-action_899 (249) = happyShift action_987-action_899 (251) = happyShift action_39-action_899 (253) = happyShift action_40-action_899 (254) = happyShift action_41-action_899 (257) = happyShift action_42-action_899 (258) = happyShift action_43-action_899 (259) = happyShift action_44-action_899 (261) = happyShift action_45-action_899 (265) = happyShift action_46-action_899 (267) = happyShift action_988-action_899 (269) = happyShift action_47-action_899 (270) = happyShift action_48-action_899 (272) = happyShift action_49-action_899 (273) = happyShift action_50-action_899 (274) = happyShift action_51-action_899 (275) = happyShift action_52-action_899 (276) = happyShift action_53-action_899 (277) = happyShift action_54-action_899 (278) = happyShift action_55-action_899 (279) = happyShift action_56-action_899 (280) = happyShift action_57-action_899 (281) = happyShift action_58-action_899 (282) = happyShift action_59-action_899 (283) = happyShift action_60-action_899 (284) = happyShift action_61-action_899 (286) = happyShift action_62-action_899 (289) = happyShift action_63-action_899 (290) = happyShift action_64-action_899 (291) = happyShift action_65-action_899 (294) = happyShift action_66-action_899 (295) = happyShift action_67-action_899 (296) = happyShift action_68-action_899 (311) = happyShift action_69-action_899 (317) = happyShift action_70-action_899 (320) = happyShift action_71-action_899 (321) = happyShift action_145-action_899 (332) = happyShift action_72-action_899 (334) = happyShift action_73-action_899 (336) = happyShift action_74-action_899 (338) = happyShift action_75-action_899 (340) = happyShift action_76-action_899 (345) = happyShift action_77-action_899 (346) = happyShift action_78-action_899 (347) = happyShift action_79-action_899 (350) = happyShift action_80-action_899 (351) = happyShift action_81-action_899 (354) = happyShift action_82-action_899 (355) = happyShift action_83-action_899 (356) = happyShift action_84-action_899 (357) = happyShift action_85-action_899 (358) = happyShift action_86-action_899 (359) = happyShift action_87-action_899 (360) = happyShift action_88-action_899 (361) = happyShift action_89-action_899 (362) = happyShift action_90-action_899 (363) = happyShift action_91-action_899 (364) = happyShift action_92-action_899 (365) = happyShift action_93-action_899 (366) = happyShift action_94-action_899 (367) = happyShift action_146-action_899 (368) = happyShift action_147-action_899 (369) = happyShift action_148-action_899 (370) = happyShift action_149-action_899 (371) = happyShift action_95-action_899 (372) = happyShift action_96-action_899 (373) = happyShift action_97-action_899 (374) = happyShift action_98-action_899 (376) = happyShift action_99-action_899 (377) = happyShift action_100-action_899 (378) = happyShift action_101-action_899 (379) = happyShift action_102-action_899 (380) = happyShift action_103-action_899 (38) = happyGoto action_13-action_899 (49) = happyGoto action_14-action_899 (56) = happyGoto action_982-action_899 (63) = happyGoto action_983-action_899 (64) = happyGoto action_984-action_899 (135) = happyGoto action_121-action_899 (136) = happyGoto action_122-action_899 (137) = happyGoto action_985-action_899 (141) = happyGoto action_124-action_899 (142) = happyGoto action_16-action_899 (144) = happyGoto action_125-action_899 (145) = happyGoto action_18-action_899 (147) = happyGoto action_19-action_899 (148) = happyGoto action_20-action_899 (149) = happyGoto action_21-action_899 (150) = happyGoto action_22-action_899 (151) = happyGoto action_23-action_899 (152) = happyGoto action_24-action_899 (192) = happyGoto action_25-action_899 (195) = happyGoto action_26-action_899 (198) = happyGoto action_27-action_899 (218) = happyGoto action_28-action_899 (219) = happyGoto action_29-action_899 (220) = happyGoto action_30-action_899 (221) = happyGoto action_31-action_899 (227) = happyGoto action_32-action_899 (229) = happyGoto action_33-action_899 (230) = happyGoto action_34-action_899 (233) = happyGoto action_35-action_899 (237) = happyGoto action_126-action_899 (238) = happyGoto action_127-action_899 (239) = happyGoto action_128-action_899 (240) = happyGoto action_129-action_899 _ = happyReduce_146--action_900 _ = happyReduce_300--action_901 (117) = happyGoto action_981-action_901 _ = happyReduce_299--action_902 (116) = happyGoto action_980-action_902 (117) = happyGoto action_754-action_902 _ = happyReduce_299--action_903 _ = happyReduce_151--action_904 (305) = happyShift action_365-action_904 (61) = happyGoto action_979-action_904 _ = happyReduce_138--action_905 _ = happyReduce_155--action_906 (1) = happyShift action_664-action_906 (331) = happyShift action_665-action_906 (342) = happyShift action_976-action_906 (234) = happyGoto action_978-action_906 _ = happyFail--action_907 _ = happyReduce_152--action_908 _ = happyReduce_130--action_909 (245) = happyShift action_37-action_909 (253) = happyShift action_40-action_909 (265) = happyShift action_46-action_909 (272) = happyShift action_49-action_909 (273) = happyShift action_50-action_909 (274) = happyShift action_51-action_909 (275) = happyShift action_180-action_909 (276) = happyShift action_181-action_909 (277) = happyShift action_182-action_909 (280) = happyShift action_57-action_909 (281) = happyShift action_58-action_909 (282) = happyShift action_59-action_909 (283) = happyShift action_60-action_909 (286) = happyShift action_62-action_909 (299) = happyShift action_183-action_909 (300) = happyShift action_184-action_909 (321) = happyShift action_185-action_909 (328) = happyShift action_186-action_909 (332) = happyShift action_187-action_909 (334) = happyShift action_188-action_909 (336) = happyShift action_189-action_909 (338) = happyShift action_190-action_909 (345) = happyShift action_191-action_909 (346) = happyShift action_192-action_909 (347) = happyShift action_193-action_909 (351) = happyShift action_194-action_909 (355) = happyShift action_195-action_909 (358) = happyShift action_196-action_909 (359) = happyShift action_197-action_909 (376) = happyShift action_198-action_909 (377) = happyShift action_199-action_909 (379) = happyShift action_102-action_909 (380) = happyShift action_103-action_909 (100) = happyGoto action_164-action_909 (104) = happyGoto action_977-action_909 (106) = happyGoto action_346-action_909 (107) = happyGoto action_169-action_909 (142) = happyGoto action_170-action_909 (202) = happyGoto action_172-action_909 (203) = happyGoto action_173-action_909 (205) = happyGoto action_174-action_909 (206) = happyGoto action_175-action_909 (215) = happyGoto action_176-action_909 (217) = happyGoto action_177-action_909 (227) = happyGoto action_178-action_909 _ = happyFail--action_910 (329) = happyShift action_975-action_910 (342) = happyShift action_976-action_910 _ = happyFail--action_911 _ = happyReduce_133--action_912 _ = happyReduce_121--action_913 (309) = happyShift action_974-action_913 _ = happyFail--action_914 (245) = happyShift action_37-action_914 (253) = happyShift action_40-action_914 (265) = happyShift action_46-action_914 (270) = happyShift action_465-action_914 (272) = happyShift action_49-action_914 (273) = happyShift action_50-action_914 (274) = happyShift action_51-action_914 (275) = happyShift action_180-action_914 (276) = happyShift action_181-action_914 (277) = happyShift action_182-action_914 (280) = happyShift action_57-action_914 (281) = happyShift action_58-action_914 (282) = happyShift action_59-action_914 (283) = happyShift action_60-action_914 (286) = happyShift action_62-action_914 (299) = happyShift action_183-action_914 (300) = happyShift action_184-action_914 (321) = happyShift action_185-action_914 (328) = happyShift action_186-action_914 (332) = happyShift action_187-action_914 (334) = happyShift action_188-action_914 (336) = happyShift action_189-action_914 (338) = happyShift action_190-action_914 (345) = happyShift action_191-action_914 (346) = happyShift action_192-action_914 (347) = happyShift action_193-action_914 (351) = happyShift action_194-action_914 (355) = happyShift action_195-action_914 (356) = happyShift action_84-action_914 (358) = happyShift action_196-action_914 (359) = happyShift action_197-action_914 (376) = happyShift action_198-action_914 (377) = happyShift action_199-action_914 (379) = happyShift action_102-action_914 (380) = happyShift action_103-action_914 (96) = happyGoto action_973-action_914 (100) = happyGoto action_164-action_914 (102) = happyGoto action_460-action_914 (103) = happyGoto action_461-action_914 (105) = happyGoto action_462-action_914 (106) = happyGoto action_463-action_914 (107) = happyGoto action_169-action_914 (142) = happyGoto action_170-action_914 (192) = happyGoto action_464-action_914 (202) = happyGoto action_172-action_914 (203) = happyGoto action_173-action_914 (205) = happyGoto action_174-action_914 (206) = happyGoto action_175-action_914 (215) = happyGoto action_176-action_914 (217) = happyGoto action_177-action_914 (227) = happyGoto action_178-action_914 _ = happyFail--action_915 _ = happyReduce_204--action_916 (327) = happyShift action_972-action_916 _ = happyFail--action_917 (245) = happyShift action_37-action_917 (253) = happyShift action_40-action_917 (265) = happyShift action_46-action_917 (270) = happyShift action_48-action_917 (272) = happyShift action_49-action_917 (273) = happyShift action_50-action_917 (274) = happyShift action_51-action_917 (275) = happyShift action_52-action_917 (276) = happyShift action_53-action_917 (277) = happyShift action_54-action_917 (279) = happyShift action_56-action_917 (280) = happyShift action_57-action_917 (281) = happyShift action_58-action_917 (282) = happyShift action_59-action_917 (283) = happyShift action_60-action_917 (286) = happyShift action_62-action_917 (336) = happyShift action_919-action_917 (346) = happyShift action_78-action_917 (80) = happyGoto action_971-action_917 (81) = happyGoto action_917-action_917 (221) = happyGoto action_918-action_917 (227) = happyGoto action_32-action_917 _ = happyReduce_183--action_918 _ = happyReduce_185--action_919 (245) = happyShift action_37-action_919 (253) = happyShift action_40-action_919 (265) = happyShift action_46-action_919 (270) = happyShift action_48-action_919 (272) = happyShift action_49-action_919 (273) = happyShift action_50-action_919 (274) = happyShift action_51-action_919 (275) = happyShift action_52-action_919 (276) = happyShift action_53-action_919 (277) = happyShift action_54-action_919 (279) = happyShift action_56-action_919 (280) = happyShift action_57-action_919 (281) = happyShift action_58-action_919 (282) = happyShift action_59-action_919 (283) = happyShift action_60-action_919 (286) = happyShift action_62-action_919 (346) = happyShift action_78-action_919 (221) = happyGoto action_970-action_919 (227) = happyGoto action_32-action_919 _ = happyFail--action_920 (308) = happyShift action_212-action_920 (310) = happyShift action_969-action_920 (320) = happyShift action_213-action_920 (321) = happyShift action_214-action_920 (322) = happyShift action_215-action_920 (327) = happyShift action_216-action_920 (344) = happyShift action_220-action_920 (348) = happyShift action_221-action_920 (349) = happyShift action_222-action_920 (352) = happyShift action_223-action_920 (353) = happyShift action_224-action_920 (200) = happyGoto action_359-action_920 (211) = happyGoto action_360-action_920 (213) = happyGoto action_361-action_920 (222) = happyGoto action_205-action_920 (224) = happyGoto action_206-action_920 (225) = happyGoto action_207-action_920 (226) = happyGoto action_208-action_920 (228) = happyGoto action_209-action_920 (231) = happyGoto action_210-action_920 (232) = happyGoto action_211-action_920 _ = happyFail--action_921 _ = happyReduce_198--action_922 (358) = happyShift action_968-action_922 _ = happyFail--action_923 _ = happyReduce_202--action_924 (306) = happyShift action_967-action_924 _ = happyFail--action_925 _ = happyReduce_104--action_926 (306) = happyShift action_966-action_926 _ = happyFail--action_927 (347) = happyShift action_544-action_927 (351) = happyShift action_545-action_927 (235) = happyGoto action_965-action_927 _ = happyFail--action_928 _ = happyReduce_74--action_929 _ = happyReduce_513--action_930 _ = happyReduce_161--action_931 _ = happyReduce_510--action_932 (310) = happyShift action_709-action_932 _ = happyFail--action_933 _ = happyReduce_494--action_934 (268) = happyShift action_964-action_934 _ = happyFail--action_935 _ = happyReduce_564--action_936 (337) = happyShift action_963-action_936 _ = happyFail--action_937 _ = happyReduce_222--action_938 (368) = happyShift action_147-action_938 (238) = happyGoto action_939-action_938 (242) = happyGoto action_962-action_938 _ = happyReduce_647--action_939 _ = happyReduce_646--action_940 (367) = happyShift action_146-action_940 (132) = happyGoto action_961-action_940 (133) = happyGoto action_279-action_940 (237) = happyGoto action_280-action_940 (243) = happyGoto action_281-action_940 _ = happyReduce_649--action_941 _ = happyReduce_280--action_942 (337) = happyShift action_959-action_942 (343) = happyShift action_960-action_942 _ = happyFail--action_943 _ = happyReduce_310--action_944 (333) = happyShift action_958-action_944 _ = happyFail--action_945 _ = happyReduce_304--action_946 (245) = happyShift action_37-action_946 (253) = happyShift action_40-action_946 (265) = happyShift action_46-action_946 (272) = happyShift action_49-action_946 (273) = happyShift action_50-action_946 (274) = happyShift action_51-action_946 (275) = happyShift action_180-action_946 (276) = happyShift action_181-action_946 (277) = happyShift action_182-action_946 (280) = happyShift action_57-action_946 (281) = happyShift action_58-action_946 (282) = happyShift action_59-action_946 (283) = happyShift action_60-action_946 (286) = happyShift action_62-action_946 (322) = happyShift action_685-action_946 (332) = happyShift action_686-action_946 (336) = happyShift action_687-action_946 (346) = happyShift action_192-action_946 (347) = happyShift action_193-action_946 (351) = happyShift action_194-action_946 (355) = happyShift action_195-action_946 (118) = happyGoto action_957-action_946 (119) = happyGoto action_680-action_946 (120) = happyGoto action_681-action_946 (121) = happyGoto action_682-action_946 (205) = happyGoto action_683-action_946 (206) = happyGoto action_175-action_946 (215) = happyGoto action_684-action_946 (217) = happyGoto action_177-action_946 (227) = happyGoto action_178-action_946 _ = happyFail--action_947 _ = happyReduce_272--action_948 _ = happyReduce_266--action_949 (337) = happyShift action_956-action_949 _ = happyFail--action_950 (306) = happyShift action_955-action_950 _ = happyFail--action_951 (306) = happyShift action_954-action_951 _ = happyFail--action_952 (268) = happyShift action_953-action_952 _ = happyFail--action_953 (328) = happyShift action_1044-action_953 (330) = happyShift action_1045-action_953 (22) = happyGoto action_1087-action_953 _ = happyFail--action_954 _ = happyReduce_24--action_955 _ = happyReduce_25--action_956 _ = happyReduce_278--action_957 _ = happyReduce_302--action_958 _ = happyReduce_312--action_959 _ = happyReduce_306--action_960 (245) = happyShift action_37-action_960 (253) = happyShift action_40-action_960 (265) = happyShift action_46-action_960 (272) = happyShift action_49-action_960 (273) = happyShift action_50-action_960 (274) = happyShift action_51-action_960 (275) = happyShift action_180-action_960 (276) = happyShift action_181-action_960 (277) = happyShift action_182-action_960 (280) = happyShift action_57-action_960 (281) = happyShift action_58-action_960 (282) = happyShift action_59-action_960 (283) = happyShift action_60-action_960 (286) = happyShift action_62-action_960 (322) = happyShift action_685-action_960 (332) = happyShift action_686-action_960 (336) = happyShift action_687-action_960 (346) = happyShift action_192-action_960 (347) = happyShift action_193-action_960 (351) = happyShift action_194-action_960 (355) = happyShift action_195-action_960 (118) = happyGoto action_1085-action_960 (119) = happyGoto action_680-action_960 (120) = happyGoto action_681-action_960 (121) = happyGoto action_682-action_960 (122) = happyGoto action_1086-action_960 (205) = happyGoto action_683-action_960 (206) = happyGoto action_175-action_960 (215) = happyGoto action_684-action_960 (217) = happyGoto action_177-action_960 (227) = happyGoto action_178-action_960 _ = happyFail--action_961 _ = happyReduce_334--action_962 _ = happyReduce_336--action_963 _ = happyReduce_293--action_964 (328) = happyShift action_1083-action_964 (330) = happyShift action_1084-action_964 (27) = happyGoto action_1082-action_964 _ = happyFail--action_965 (245) = happyShift action_1081-action_965 (45) = happyGoto action_1080-action_965 _ = happyReduce_79--action_966 _ = happyReduce_109--action_967 _ = happyReduce_108--action_968 _ = happyReduce_199--action_969 (244) = happyShift action_36-action_969 (245) = happyShift action_37-action_969 (246) = happyShift action_38-action_969 (251) = happyShift action_39-action_969 (253) = happyShift action_40-action_969 (254) = happyShift action_41-action_969 (261) = happyShift action_45-action_969 (265) = happyShift action_46-action_969 (269) = happyShift action_47-action_969 (270) = happyShift action_48-action_969 (272) = happyShift action_49-action_969 (273) = happyShift action_50-action_969 (274) = happyShift action_51-action_969 (275) = happyShift action_52-action_969 (276) = happyShift action_53-action_969 (277) = happyShift action_54-action_969 (278) = happyShift action_55-action_969 (279) = happyShift action_56-action_969 (280) = happyShift action_57-action_969 (281) = happyShift action_58-action_969 (282) = happyShift action_59-action_969 (283) = happyShift action_60-action_969 (284) = happyShift action_61-action_969 (286) = happyShift action_62-action_969 (294) = happyShift action_66-action_969 (295) = happyShift action_67-action_969 (296) = happyShift action_68-action_969 (311) = happyShift action_69-action_969 (317) = happyShift action_70-action_969 (320) = happyShift action_71-action_969 (332) = happyShift action_72-action_969 (334) = happyShift action_73-action_969 (336) = happyShift action_107-action_969 (338) = happyShift action_75-action_969 (340) = happyShift action_76-action_969 (345) = happyShift action_77-action_969 (346) = happyShift action_78-action_969 (347) = happyShift action_79-action_969 (350) = happyShift action_80-action_969 (351) = happyShift action_81-action_969 (354) = happyShift action_82-action_969 (355) = happyShift action_83-action_969 (356) = happyShift action_84-action_969 (357) = happyShift action_85-action_969 (358) = happyShift action_86-action_969 (359) = happyShift action_87-action_969 (360) = happyShift action_88-action_969 (361) = happyShift action_89-action_969 (362) = happyShift action_90-action_969 (363) = happyShift action_91-action_969 (364) = happyShift action_92-action_969 (365) = happyShift action_93-action_969 (366) = happyShift action_94-action_969 (371) = happyShift action_95-action_969 (372) = happyShift action_96-action_969 (373) = happyShift action_97-action_969 (374) = happyShift action_98-action_969 (376) = happyShift action_99-action_969 (377) = happyShift action_100-action_969 (378) = happyShift action_101-action_969 (379) = happyShift action_102-action_969 (380) = happyShift action_103-action_969 (38) = happyGoto action_13-action_969 (142) = happyGoto action_16-action_969 (143) = happyGoto action_1079-action_969 (144) = happyGoto action_105-action_969 (145) = happyGoto action_18-action_969 (147) = happyGoto action_19-action_969 (148) = happyGoto action_20-action_969 (149) = happyGoto action_21-action_969 (150) = happyGoto action_22-action_969 (151) = happyGoto action_23-action_969 (152) = happyGoto action_24-action_969 (192) = happyGoto action_25-action_969 (195) = happyGoto action_26-action_969 (198) = happyGoto action_27-action_969 (219) = happyGoto action_29-action_969 (220) = happyGoto action_30-action_969 (221) = happyGoto action_106-action_969 (227) = happyGoto action_32-action_969 (229) = happyGoto action_33-action_969 (230) = happyGoto action_34-action_969 (233) = happyGoto action_35-action_969 _ = happyFail--action_970 (309) = happyShift action_1078-action_970 _ = happyFail--action_971 _ = happyReduce_184--action_972 _ = happyReduce_181--action_973 _ = happyReduce_215--action_974 (245) = happyShift action_37-action_974 (253) = happyShift action_40-action_974 (265) = happyShift action_46-action_974 (270) = happyShift action_465-action_974 (272) = happyShift action_49-action_974 (273) = happyShift action_50-action_974 (274) = happyShift action_51-action_974 (275) = happyShift action_180-action_974 (276) = happyShift action_181-action_974 (277) = happyShift action_182-action_974 (280) = happyShift action_57-action_974 (281) = happyShift action_58-action_974 (282) = happyShift action_59-action_974 (283) = happyShift action_60-action_974 (286) = happyShift action_62-action_974 (299) = happyShift action_183-action_974 (300) = happyShift action_184-action_974 (321) = happyShift action_185-action_974 (328) = happyShift action_186-action_974 (332) = happyShift action_187-action_974 (334) = happyShift action_188-action_974 (336) = happyShift action_189-action_974 (338) = happyShift action_190-action_974 (345) = happyShift action_191-action_974 (346) = happyShift action_192-action_974 (347) = happyShift action_193-action_974 (351) = happyShift action_194-action_974 (355) = happyShift action_195-action_974 (356) = happyShift action_84-action_974 (358) = happyShift action_196-action_974 (359) = happyShift action_197-action_974 (376) = happyShift action_198-action_974 (377) = happyShift action_199-action_974 (379) = happyShift action_102-action_974 (380) = happyShift action_103-action_974 (96) = happyGoto action_1077-action_974 (100) = happyGoto action_164-action_974 (102) = happyGoto action_460-action_974 (103) = happyGoto action_461-action_974 (105) = happyGoto action_462-action_974 (106) = happyGoto action_463-action_974 (107) = happyGoto action_169-action_974 (142) = happyGoto action_170-action_974 (192) = happyGoto action_464-action_974 (202) = happyGoto action_172-action_974 (203) = happyGoto action_173-action_974 (205) = happyGoto action_174-action_974 (206) = happyGoto action_175-action_974 (215) = happyGoto action_176-action_974 (217) = happyGoto action_177-action_974 (227) = happyGoto action_178-action_974 _ = happyFail--action_975 _ = happyReduce_157--action_976 (244) = happyShift action_36-action_976 (245) = happyShift action_37-action_976 (246) = happyShift action_38-action_976 (248) = happyShift action_908-action_976 (251) = happyShift action_39-action_976 (253) = happyShift action_40-action_976 (254) = happyShift action_41-action_976 (257) = happyShift action_42-action_976 (258) = happyShift action_43-action_976 (259) = happyShift action_44-action_976 (261) = happyShift action_45-action_976 (263) = happyShift action_135-action_976 (265) = happyShift action_46-action_976 (267) = happyShift action_909-action_976 (269) = happyShift action_47-action_976 (270) = happyShift action_48-action_976 (272) = happyShift action_49-action_976 (273) = happyShift action_50-action_976 (274) = happyShift action_51-action_976 (275) = happyShift action_52-action_976 (276) = happyShift action_53-action_976 (277) = happyShift action_54-action_976 (278) = happyShift action_55-action_976 (279) = happyShift action_56-action_976 (280) = happyShift action_57-action_976 (281) = happyShift action_58-action_976 (282) = happyShift action_59-action_976 (283) = happyShift action_60-action_976 (284) = happyShift action_61-action_976 (286) = happyShift action_62-action_976 (289) = happyShift action_63-action_976 (290) = happyShift action_64-action_976 (291) = happyShift action_65-action_976 (294) = happyShift action_66-action_976 (295) = happyShift action_67-action_976 (296) = happyShift action_68-action_976 (311) = happyShift action_69-action_976 (317) = happyShift action_70-action_976 (320) = happyShift action_71-action_976 (321) = happyShift action_145-action_976 (332) = happyShift action_72-action_976 (334) = happyShift action_73-action_976 (336) = happyShift action_74-action_976 (338) = happyShift action_75-action_976 (340) = happyShift action_76-action_976 (345) = happyShift action_77-action_976 (346) = happyShift action_78-action_976 (347) = happyShift action_79-action_976 (350) = happyShift action_80-action_976 (351) = happyShift action_81-action_976 (354) = happyShift action_82-action_976 (355) = happyShift action_83-action_976 (356) = happyShift action_84-action_976 (357) = happyShift action_85-action_976 (358) = happyShift action_86-action_976 (359) = happyShift action_87-action_976 (360) = happyShift action_88-action_976 (361) = happyShift action_89-action_976 (362) = happyShift action_90-action_976 (363) = happyShift action_91-action_976 (364) = happyShift action_92-action_976 (365) = happyShift action_93-action_976 (366) = happyShift action_94-action_976 (367) = happyShift action_146-action_976 (368) = happyShift action_147-action_976 (369) = happyShift action_148-action_976 (370) = happyShift action_149-action_976 (371) = happyShift action_95-action_976 (372) = happyShift action_96-action_976 (373) = happyShift action_97-action_976 (374) = happyShift action_98-action_976 (376) = happyShift action_99-action_976 (377) = happyShift action_100-action_976 (378) = happyShift action_101-action_976 (379) = happyShift action_102-action_976 (380) = happyShift action_103-action_976 (38) = happyGoto action_13-action_976 (49) = happyGoto action_14-action_976 (57) = happyGoto action_903-action_976 (58) = happyGoto action_904-action_976 (67) = happyGoto action_1076-action_976 (135) = happyGoto action_121-action_976 (136) = happyGoto action_122-action_976 (137) = happyGoto action_907-action_976 (141) = happyGoto action_124-action_976 (142) = happyGoto action_16-action_976 (144) = happyGoto action_125-action_976 (145) = happyGoto action_18-action_976 (147) = happyGoto action_19-action_976 (148) = happyGoto action_20-action_976 (149) = happyGoto action_21-action_976 (150) = happyGoto action_22-action_976 (151) = happyGoto action_23-action_976 (152) = happyGoto action_24-action_976 (192) = happyGoto action_25-action_976 (195) = happyGoto action_26-action_976 (198) = happyGoto action_27-action_976 (218) = happyGoto action_28-action_976 (219) = happyGoto action_29-action_976 (220) = happyGoto action_30-action_976 (221) = happyGoto action_31-action_976 (227) = happyGoto action_32-action_976 (229) = happyGoto action_33-action_976 (230) = happyGoto action_34-action_976 (233) = happyGoto action_35-action_976 (237) = happyGoto action_126-action_976 (238) = happyGoto action_127-action_976 (239) = happyGoto action_128-action_976 (240) = happyGoto action_129-action_976 _ = happyReduce_154--action_977 (310) = happyShift action_1075-action_977 _ = happyFail--action_978 _ = happyReduce_158--action_979 (245) = happyShift action_37-action_979 (253) = happyShift action_40-action_979 (265) = happyShift action_46-action_979 (272) = happyShift action_49-action_979 (273) = happyShift action_50-action_979 (274) = happyShift action_51-action_979 (275) = happyShift action_180-action_979 (276) = happyShift action_181-action_979 (277) = happyShift action_182-action_979 (280) = happyShift action_57-action_979 (281) = happyShift action_58-action_979 (282) = happyShift action_59-action_979 (283) = happyShift action_60-action_979 (286) = happyShift action_62-action_979 (299) = happyShift action_183-action_979 (300) = happyShift action_184-action_979 (321) = happyShift action_185-action_979 (328) = happyShift action_186-action_979 (332) = happyShift action_187-action_979 (334) = happyShift action_188-action_979 (336) = happyShift action_189-action_979 (338) = happyShift action_190-action_979 (345) = happyShift action_191-action_979 (346) = happyShift action_192-action_979 (347) = happyShift action_193-action_979 (351) = happyShift action_194-action_979 (355) = happyShift action_195-action_979 (358) = happyShift action_196-action_979 (359) = happyShift action_197-action_979 (376) = happyShift action_198-action_979 (377) = happyShift action_199-action_979 (379) = happyShift action_102-action_979 (380) = happyShift action_103-action_979 (60) = happyGoto action_1074-action_979 (100) = happyGoto action_164-action_979 (103) = happyGoto action_356-action_979 (104) = happyGoto action_357-action_979 (106) = happyGoto action_168-action_979 (107) = happyGoto action_169-action_979 (142) = happyGoto action_170-action_979 (202) = happyGoto action_172-action_979 (203) = happyGoto action_173-action_979 (205) = happyGoto action_174-action_979 (206) = happyGoto action_175-action_979 (215) = happyGoto action_176-action_979 (217) = happyGoto action_177-action_979 (227) = happyGoto action_178-action_979 _ = happyFail--action_980 _ = happyReduce_296--action_981 (245) = happyShift action_37-action_981 (253) = happyShift action_40-action_981 (265) = happyShift action_46-action_981 (272) = happyShift action_49-action_981 (273) = happyShift action_50-action_981 (274) = happyShift action_51-action_981 (275) = happyShift action_180-action_981 (276) = happyShift action_181-action_981 (277) = happyShift action_182-action_981 (280) = happyShift action_57-action_981 (281) = happyShift action_58-action_981 (282) = happyShift action_59-action_981 (283) = happyShift action_60-action_981 (286) = happyShift action_62-action_981 (346) = happyShift action_192-action_981 (215) = happyGoto action_900-action_981 (217) = happyGoto action_177-action_981 (227) = happyGoto action_178-action_981 _ = happyReduce_298--action_982 _ = happyReduce_140--action_983 _ = happyReduce_145--action_984 (1) = happyShift action_664-action_984 (331) = happyShift action_665-action_984 (342) = happyShift action_1069-action_984 (234) = happyGoto action_1073-action_984 _ = happyFail--action_985 _ = happyReduce_141--action_986 (245) = happyShift action_37-action_986 (253) = happyShift action_40-action_986 (265) = happyShift action_46-action_986 (272) = happyShift action_49-action_986 (273) = happyShift action_50-action_986 (274) = happyShift action_51-action_986 (275) = happyShift action_180-action_986 (276) = happyShift action_181-action_986 (277) = happyShift action_182-action_986 (280) = happyShift action_57-action_986 (281) = happyShift action_58-action_986 (282) = happyShift action_59-action_986 (283) = happyShift action_60-action_986 (286) = happyShift action_62-action_986 (299) = happyShift action_183-action_986 (300) = happyShift action_184-action_986 (321) = happyShift action_185-action_986 (328) = happyShift action_186-action_986 (332) = happyShift action_187-action_986 (334) = happyShift action_188-action_986 (336) = happyShift action_189-action_986 (338) = happyShift action_190-action_986 (345) = happyShift action_191-action_986 (346) = happyShift action_192-action_986 (347) = happyShift action_193-action_986 (351) = happyShift action_194-action_986 (355) = happyShift action_195-action_986 (358) = happyShift action_196-action_986 (359) = happyShift action_197-action_986 (376) = happyShift action_198-action_986 (377) = happyShift action_199-action_986 (379) = happyShift action_102-action_986 (380) = happyShift action_103-action_986 (100) = happyGoto action_164-action_986 (104) = happyGoto action_1072-action_986 (106) = happyGoto action_346-action_986 (107) = happyGoto action_169-action_986 (142) = happyGoto action_170-action_986 (202) = happyGoto action_172-action_986 (203) = happyGoto action_173-action_986 (205) = happyGoto action_174-action_986 (206) = happyGoto action_175-action_986 (215) = happyGoto action_176-action_986 (217) = happyGoto action_177-action_986 (227) = happyGoto action_178-action_986 _ = happyFail--action_987 (244) = happyShift action_36-action_987 (245) = happyShift action_37-action_987 (246) = happyShift action_38-action_987 (251) = happyShift action_39-action_987 (253) = happyShift action_40-action_987 (254) = happyShift action_41-action_987 (261) = happyShift action_45-action_987 (265) = happyShift action_46-action_987 (269) = happyShift action_47-action_987 (270) = happyShift action_48-action_987 (272) = happyShift action_49-action_987 (273) = happyShift action_50-action_987 (274) = happyShift action_51-action_987 (275) = happyShift action_52-action_987 (276) = happyShift action_53-action_987 (277) = happyShift action_54-action_987 (278) = happyShift action_55-action_987 (279) = happyShift action_56-action_987 (280) = happyShift action_57-action_987 (281) = happyShift action_58-action_987 (282) = happyShift action_59-action_987 (283) = happyShift action_60-action_987 (284) = happyShift action_61-action_987 (286) = happyShift action_62-action_987 (294) = happyShift action_66-action_987 (295) = happyShift action_67-action_987 (296) = happyShift action_68-action_987 (311) = happyShift action_69-action_987 (317) = happyShift action_70-action_987 (320) = happyShift action_71-action_987 (332) = happyShift action_72-action_987 (334) = happyShift action_73-action_987 (336) = happyShift action_107-action_987 (338) = happyShift action_75-action_987 (340) = happyShift action_76-action_987 (345) = happyShift action_77-action_987 (346) = happyShift action_78-action_987 (347) = happyShift action_79-action_987 (350) = happyShift action_80-action_987 (351) = happyShift action_81-action_987 (354) = happyShift action_82-action_987 (355) = happyShift action_83-action_987 (356) = happyShift action_84-action_987 (357) = happyShift action_85-action_987 (358) = happyShift action_86-action_987 (359) = happyShift action_87-action_987 (360) = happyShift action_88-action_987 (361) = happyShift action_89-action_987 (362) = happyShift action_90-action_987 (363) = happyShift action_91-action_987 (364) = happyShift action_92-action_987 (365) = happyShift action_93-action_987 (366) = happyShift action_94-action_987 (371) = happyShift action_95-action_987 (372) = happyShift action_96-action_987 (373) = happyShift action_97-action_987 (374) = happyShift action_98-action_987 (376) = happyShift action_99-action_987 (377) = happyShift action_100-action_987 (378) = happyShift action_101-action_987 (379) = happyShift action_102-action_987 (380) = happyShift action_103-action_987 (38) = happyGoto action_13-action_987 (142) = happyGoto action_16-action_987 (144) = happyGoto action_1071-action_987 (145) = happyGoto action_18-action_987 (147) = happyGoto action_19-action_987 (148) = happyGoto action_20-action_987 (149) = happyGoto action_21-action_987 (150) = happyGoto action_22-action_987 (151) = happyGoto action_23-action_987 (152) = happyGoto action_24-action_987 (192) = happyGoto action_25-action_987 (195) = happyGoto action_26-action_987 (198) = happyGoto action_27-action_987 (219) = happyGoto action_29-action_987 (220) = happyGoto action_30-action_987 (221) = happyGoto action_106-action_987 (227) = happyGoto action_32-action_987 (229) = happyGoto action_33-action_987 (230) = happyGoto action_34-action_987 (233) = happyGoto action_35-action_987 _ = happyFail--action_988 (245) = happyShift action_37-action_988 (253) = happyShift action_40-action_988 (265) = happyShift action_46-action_988 (272) = happyShift action_49-action_988 (273) = happyShift action_50-action_988 (274) = happyShift action_51-action_988 (275) = happyShift action_180-action_988 (276) = happyShift action_181-action_988 (277) = happyShift action_182-action_988 (280) = happyShift action_57-action_988 (281) = happyShift action_58-action_988 (282) = happyShift action_59-action_988 (283) = happyShift action_60-action_988 (286) = happyShift action_62-action_988 (299) = happyShift action_183-action_988 (300) = happyShift action_184-action_988 (321) = happyShift action_185-action_988 (328) = happyShift action_186-action_988 (332) = happyShift action_187-action_988 (334) = happyShift action_188-action_988 (336) = happyShift action_189-action_988 (338) = happyShift action_190-action_988 (345) = happyShift action_191-action_988 (346) = happyShift action_192-action_988 (347) = happyShift action_193-action_988 (351) = happyShift action_194-action_988 (355) = happyShift action_195-action_988 (358) = happyShift action_196-action_988 (359) = happyShift action_197-action_988 (376) = happyShift action_198-action_988 (377) = happyShift action_199-action_988 (379) = happyShift action_102-action_988 (380) = happyShift action_103-action_988 (100) = happyGoto action_164-action_988 (104) = happyGoto action_1070-action_988 (106) = happyGoto action_346-action_988 (107) = happyGoto action_169-action_988 (142) = happyGoto action_170-action_988 (202) = happyGoto action_172-action_988 (203) = happyGoto action_173-action_988 (205) = happyGoto action_174-action_988 (206) = happyGoto action_175-action_988 (215) = happyGoto action_176-action_988 (217) = happyGoto action_177-action_988 (227) = happyGoto action_178-action_988 _ = happyFail--action_989 (329) = happyShift action_1068-action_989 (342) = happyShift action_1069-action_989 _ = happyFail--action_990 _ = happyReduce_354--action_991 _ = happyReduce_235--action_992 _ = happyReduce_251--action_993 _ = happyReduce_253--action_994 _ = happyReduce_255--action_995 (310) = happyReduce_247-action_995 (313) = happyReduce_247-action_995 _ = happyReduce_258--action_996 (310) = happyReduce_246-action_996 (313) = happyReduce_246-action_996 _ = happyReduce_257--action_997 _ = happyReduce_118--action_998 (313) = happyReduce_649-action_998 (367) = happyShift action_146-action_998 (237) = happyGoto action_280-action_998 (243) = happyGoto action_1067-action_998 _ = happyReduce_323--action_999 _ = happyReduce_325--action_1000 (270) = happyShift action_1066-action_1000 (129) = happyGoto action_1065-action_1000 _ = happyReduce_329--action_1001 (332) = happyShift action_217-action_1001 (336) = happyShift action_1062-action_1001 (338) = happyShift action_219-action_1001 (347) = happyShift action_1063-action_1001 (351) = happyShift action_194-action_1001 (355) = happyShift action_195-action_1001 (124) = happyGoto action_1064-action_1001 (125) = happyGoto action_1058-action_1001 (196) = happyGoto action_1059-action_1001 (197) = happyGoto action_1060-action_1001 (198) = happyGoto action_325-action_1001 (203) = happyGoto action_1061-action_1001 (205) = happyGoto action_174-action_1001 (206) = happyGoto action_175-action_1001 (230) = happyGoto action_328-action_1001 _ = happyReduce_320--action_1002 (332) = happyShift action_217-action_1002 (336) = happyShift action_1062-action_1002 (338) = happyShift action_219-action_1002 (347) = happyShift action_1063-action_1002 (351) = happyShift action_194-action_1002 (355) = happyShift action_195-action_1002 (124) = happyGoto action_1057-action_1002 (125) = happyGoto action_1058-action_1002 (196) = happyGoto action_1059-action_1002 (197) = happyGoto action_1060-action_1002 (198) = happyGoto action_325-action_1002 (203) = happyGoto action_1061-action_1002 (205) = happyGoto action_174-action_1002 (206) = happyGoto action_175-action_1002 (230) = happyGoto action_328-action_1002 _ = happyReduce_320--action_1003 _ = happyReduce_123--action_1004 _ = happyReduce_338--action_1005 (245) = happyShift action_37-action_1005 (253) = happyShift action_40-action_1005 (265) = happyShift action_46-action_1005 (270) = happyShift action_179-action_1005 (272) = happyShift action_49-action_1005 (273) = happyShift action_50-action_1005 (274) = happyShift action_51-action_1005 (275) = happyShift action_180-action_1005 (276) = happyShift action_181-action_1005 (277) = happyShift action_182-action_1005 (280) = happyShift action_57-action_1005 (281) = happyShift action_58-action_1005 (282) = happyShift action_59-action_1005 (283) = happyShift action_60-action_1005 (286) = happyShift action_62-action_1005 (299) = happyShift action_183-action_1005 (300) = happyShift action_184-action_1005 (321) = happyShift action_185-action_1005 (328) = happyShift action_186-action_1005 (332) = happyShift action_187-action_1005 (334) = happyShift action_188-action_1005 (336) = happyShift action_189-action_1005 (337) = happyShift action_1056-action_1005 (338) = happyShift action_190-action_1005 (345) = happyShift action_191-action_1005 (346) = happyShift action_192-action_1005 (347) = happyShift action_193-action_1005 (351) = happyShift action_194-action_1005 (355) = happyShift action_195-action_1005 (356) = happyShift action_84-action_1005 (358) = happyShift action_196-action_1005 (359) = happyShift action_197-action_1005 (376) = happyShift action_198-action_1005 (377) = happyShift action_199-action_1005 (379) = happyShift action_102-action_1005 (380) = happyShift action_103-action_1005 (95) = happyGoto action_349-action_1005 (100) = happyGoto action_164-action_1005 (101) = happyGoto action_350-action_1005 (103) = happyGoto action_166-action_1005 (104) = happyGoto action_167-action_1005 (106) = happyGoto action_168-action_1005 (107) = happyGoto action_169-action_1005 (108) = happyGoto action_1054-action_1005 (109) = happyGoto action_1055-action_1005 (142) = happyGoto action_170-action_1005 (192) = happyGoto action_171-action_1005 (202) = happyGoto action_172-action_1005 (203) = happyGoto action_173-action_1005 (205) = happyGoto action_174-action_1005 (206) = happyGoto action_175-action_1005 (215) = happyGoto action_176-action_1005 (217) = happyGoto action_177-action_1005 (227) = happyGoto action_178-action_1005 _ = happyFail--action_1006 (337) = happyShift action_1053-action_1006 _ = happyFail--action_1007 _ = happyReduce_44--action_1008 (245) = happyShift action_37-action_1008 (253) = happyShift action_40-action_1008 (262) = happyShift action_1050-action_1008 (265) = happyShift action_46-action_1008 (267) = happyShift action_1051-action_1008 (270) = happyShift action_48-action_1008 (272) = happyShift action_49-action_1008 (273) = happyShift action_50-action_1008 (274) = happyShift action_51-action_1008 (275) = happyShift action_52-action_1008 (276) = happyShift action_53-action_1008 (277) = happyShift action_54-action_1008 (279) = happyShift action_56-action_1008 (280) = happyShift action_57-action_1008 (281) = happyShift action_58-action_1008 (282) = happyShift action_59-action_1008 (283) = happyShift action_60-action_1008 (286) = happyShift action_62-action_1008 (332) = happyShift action_217-action_1008 (336) = happyShift action_402-action_1008 (338) = happyShift action_219-action_1008 (343) = happyShift action_1052-action_1008 (346) = happyShift action_78-action_1008 (347) = happyShift action_79-action_1008 (350) = happyShift action_80-action_1008 (351) = happyShift action_81-action_1008 (354) = happyShift action_82-action_1008 (355) = happyShift action_83-action_1008 (34) = happyGoto action_1047-action_1008 (37) = happyGoto action_1048-action_1008 (38) = happyGoto action_1049-action_1008 (195) = happyGoto action_26-action_1008 (198) = happyGoto action_27-action_1008 (219) = happyGoto action_404-action_1008 (220) = happyGoto action_30-action_1008 (221) = happyGoto action_106-action_1008 (227) = happyGoto action_32-action_1008 (229) = happyGoto action_33-action_1008 (230) = happyGoto action_34-action_1008 _ = happyReduce_47--action_1009 (367) = happyShift action_146-action_1009 (369) = happyShift action_148-action_1009 (370) = happyShift action_149-action_1009 (32) = happyGoto action_1046-action_1009 (33) = happyGoto action_1009-action_1009 (237) = happyGoto action_1010-action_1009 (239) = happyGoto action_1011-action_1009 (240) = happyGoto action_1012-action_1009 _ = happyReduce_49--action_1010 _ = happyReduce_52--action_1011 _ = happyReduce_51--action_1012 _ = happyReduce_50--action_1013 (328) = happyShift action_1044-action_1013 (330) = happyShift action_1045-action_1013 (22) = happyGoto action_1043-action_1013 _ = happyFail--action_1014 _ = happyReduce_464--action_1015 _ = happyReduce_452--action_1016 _ = happyReduce_453--action_1017 _ = happyReduce_450--action_1018 (244) = happyShift action_36-action_1018 (245) = happyShift action_37-action_1018 (246) = happyShift action_38-action_1018 (251) = happyShift action_39-action_1018 (253) = happyShift action_40-action_1018 (254) = happyShift action_41-action_1018 (261) = happyShift action_45-action_1018 (265) = happyShift action_46-action_1018 (269) = happyShift action_47-action_1018 (270) = happyShift action_48-action_1018 (272) = happyShift action_49-action_1018 (273) = happyShift action_50-action_1018 (274) = happyShift action_51-action_1018 (275) = happyShift action_52-action_1018 (276) = happyShift action_53-action_1018 (277) = happyShift action_54-action_1018 (278) = happyShift action_55-action_1018 (279) = happyShift action_56-action_1018 (280) = happyShift action_57-action_1018 (281) = happyShift action_58-action_1018 (282) = happyShift action_59-action_1018 (283) = happyShift action_60-action_1018 (284) = happyShift action_61-action_1018 (286) = happyShift action_62-action_1018 (294) = happyShift action_66-action_1018 (295) = happyShift action_67-action_1018 (296) = happyShift action_68-action_1018 (311) = happyShift action_69-action_1018 (317) = happyShift action_70-action_1018 (320) = happyShift action_71-action_1018 (332) = happyShift action_72-action_1018 (334) = happyShift action_73-action_1018 (336) = happyShift action_107-action_1018 (338) = happyShift action_75-action_1018 (340) = happyShift action_76-action_1018 (345) = happyShift action_77-action_1018 (346) = happyShift action_78-action_1018 (347) = happyShift action_79-action_1018 (350) = happyShift action_80-action_1018 (351) = happyShift action_81-action_1018 (354) = happyShift action_82-action_1018 (355) = happyShift action_83-action_1018 (356) = happyShift action_84-action_1018 (357) = happyShift action_85-action_1018 (358) = happyShift action_86-action_1018 (359) = happyShift action_87-action_1018 (360) = happyShift action_88-action_1018 (361) = happyShift action_89-action_1018 (362) = happyShift action_90-action_1018 (363) = happyShift action_91-action_1018 (364) = happyShift action_92-action_1018 (365) = happyShift action_93-action_1018 (366) = happyShift action_94-action_1018 (371) = happyShift action_95-action_1018 (372) = happyShift action_96-action_1018 (373) = happyShift action_97-action_1018 (374) = happyShift action_98-action_1018 (376) = happyShift action_99-action_1018 (377) = happyShift action_100-action_1018 (378) = happyShift action_101-action_1018 (379) = happyShift action_102-action_1018 (380) = happyShift action_103-action_1018 (38) = happyGoto action_13-action_1018 (142) = happyGoto action_16-action_1018 (143) = happyGoto action_1042-action_1018 (144) = happyGoto action_105-action_1018 (145) = happyGoto action_18-action_1018 (147) = happyGoto action_19-action_1018 (148) = happyGoto action_20-action_1018 (149) = happyGoto action_21-action_1018 (150) = happyGoto action_22-action_1018 (151) = happyGoto action_23-action_1018 (152) = happyGoto action_24-action_1018 (192) = happyGoto action_25-action_1018 (195) = happyGoto action_26-action_1018 (198) = happyGoto action_27-action_1018 (219) = happyGoto action_29-action_1018 (220) = happyGoto action_30-action_1018 (221) = happyGoto action_106-action_1018 (227) = happyGoto action_32-action_1018 (229) = happyGoto action_33-action_1018 (230) = happyGoto action_34-action_1018 (233) = happyGoto action_35-action_1018 _ = happyFail--action_1019 (244) = happyShift action_36-action_1019 (245) = happyShift action_37-action_1019 (246) = happyShift action_38-action_1019 (251) = happyShift action_39-action_1019 (253) = happyShift action_40-action_1019 (254) = happyShift action_41-action_1019 (261) = happyShift action_45-action_1019 (265) = happyShift action_46-action_1019 (269) = happyShift action_47-action_1019 (270) = happyShift action_48-action_1019 (272) = happyShift action_49-action_1019 (273) = happyShift action_50-action_1019 (274) = happyShift action_51-action_1019 (275) = happyShift action_52-action_1019 (276) = happyShift action_53-action_1019 (277) = happyShift action_54-action_1019 (278) = happyShift action_55-action_1019 (279) = happyShift action_56-action_1019 (280) = happyShift action_57-action_1019 (281) = happyShift action_58-action_1019 (282) = happyShift action_59-action_1019 (283) = happyShift action_60-action_1019 (284) = happyShift action_61-action_1019 (286) = happyShift action_62-action_1019 (294) = happyShift action_66-action_1019 (295) = happyShift action_67-action_1019 (296) = happyShift action_68-action_1019 (311) = happyShift action_69-action_1019 (317) = happyShift action_70-action_1019 (320) = happyShift action_71-action_1019 (332) = happyShift action_72-action_1019 (334) = happyShift action_73-action_1019 (336) = happyShift action_107-action_1019 (338) = happyShift action_75-action_1019 (340) = happyShift action_76-action_1019 (345) = happyShift action_77-action_1019 (346) = happyShift action_78-action_1019 (347) = happyShift action_79-action_1019 (350) = happyShift action_80-action_1019 (351) = happyShift action_81-action_1019 (354) = happyShift action_82-action_1019 (355) = happyShift action_83-action_1019 (356) = happyShift action_84-action_1019 (357) = happyShift action_85-action_1019 (358) = happyShift action_86-action_1019 (359) = happyShift action_87-action_1019 (360) = happyShift action_88-action_1019 (361) = happyShift action_89-action_1019 (362) = happyShift action_90-action_1019 (363) = happyShift action_91-action_1019 (364) = happyShift action_92-action_1019 (365) = happyShift action_93-action_1019 (366) = happyShift action_94-action_1019 (371) = happyShift action_95-action_1019 (372) = happyShift action_96-action_1019 (373) = happyShift action_97-action_1019 (374) = happyShift action_98-action_1019 (376) = happyShift action_99-action_1019 (377) = happyShift action_100-action_1019 (378) = happyShift action_101-action_1019 (379) = happyShift action_102-action_1019 (380) = happyShift action_103-action_1019 (38) = happyGoto action_13-action_1019 (142) = happyGoto action_16-action_1019 (143) = happyGoto action_1041-action_1019 (144) = happyGoto action_105-action_1019 (145) = happyGoto action_18-action_1019 (147) = happyGoto action_19-action_1019 (148) = happyGoto action_20-action_1019 (149) = happyGoto action_21-action_1019 (150) = happyGoto action_22-action_1019 (151) = happyGoto action_23-action_1019 (152) = happyGoto action_24-action_1019 (192) = happyGoto action_25-action_1019 (195) = happyGoto action_26-action_1019 (198) = happyGoto action_27-action_1019 (219) = happyGoto action_29-action_1019 (220) = happyGoto action_30-action_1019 (221) = happyGoto action_106-action_1019 (227) = happyGoto action_32-action_1019 (229) = happyGoto action_33-action_1019 (230) = happyGoto action_34-action_1019 (233) = happyGoto action_35-action_1019 _ = happyFail--action_1020 (244) = happyShift action_36-action_1020 (245) = happyShift action_37-action_1020 (246) = happyShift action_38-action_1020 (251) = happyShift action_39-action_1020 (253) = happyShift action_40-action_1020 (254) = happyShift action_41-action_1020 (261) = happyShift action_45-action_1020 (265) = happyShift action_46-action_1020 (269) = happyShift action_47-action_1020 (270) = happyShift action_48-action_1020 (272) = happyShift action_49-action_1020 (273) = happyShift action_50-action_1020 (274) = happyShift action_51-action_1020 (275) = happyShift action_52-action_1020 (276) = happyShift action_53-action_1020 (277) = happyShift action_54-action_1020 (278) = happyShift action_55-action_1020 (279) = happyShift action_56-action_1020 (280) = happyShift action_57-action_1020 (281) = happyShift action_58-action_1020 (282) = happyShift action_59-action_1020 (283) = happyShift action_60-action_1020 (284) = happyShift action_61-action_1020 (286) = happyShift action_62-action_1020 (294) = happyShift action_66-action_1020 (295) = happyShift action_67-action_1020 (296) = happyShift action_68-action_1020 (311) = happyShift action_69-action_1020 (317) = happyShift action_70-action_1020 (320) = happyShift action_71-action_1020 (332) = happyShift action_72-action_1020 (334) = happyShift action_73-action_1020 (336) = happyShift action_107-action_1020 (338) = happyShift action_75-action_1020 (340) = happyShift action_76-action_1020 (345) = happyShift action_77-action_1020 (346) = happyShift action_78-action_1020 (347) = happyShift action_79-action_1020 (350) = happyShift action_80-action_1020 (351) = happyShift action_81-action_1020 (354) = happyShift action_82-action_1020 (355) = happyShift action_83-action_1020 (356) = happyShift action_84-action_1020 (357) = happyShift action_85-action_1020 (358) = happyShift action_86-action_1020 (359) = happyShift action_87-action_1020 (360) = happyShift action_88-action_1020 (361) = happyShift action_89-action_1020 (362) = happyShift action_90-action_1020 (363) = happyShift action_91-action_1020 (364) = happyShift action_92-action_1020 (365) = happyShift action_93-action_1020 (366) = happyShift action_94-action_1020 (371) = happyShift action_95-action_1020 (372) = happyShift action_96-action_1020 (373) = happyShift action_97-action_1020 (374) = happyShift action_98-action_1020 (376) = happyShift action_99-action_1020 (377) = happyShift action_100-action_1020 (378) = happyShift action_101-action_1020 (379) = happyShift action_102-action_1020 (380) = happyShift action_103-action_1020 (38) = happyGoto action_13-action_1020 (142) = happyGoto action_16-action_1020 (143) = happyGoto action_1040-action_1020 (144) = happyGoto action_105-action_1020 (145) = happyGoto action_18-action_1020 (147) = happyGoto action_19-action_1020 (148) = happyGoto action_20-action_1020 (149) = happyGoto action_21-action_1020 (150) = happyGoto action_22-action_1020 (151) = happyGoto action_23-action_1020 (152) = happyGoto action_24-action_1020 (192) = happyGoto action_25-action_1020 (195) = happyGoto action_26-action_1020 (198) = happyGoto action_27-action_1020 (219) = happyGoto action_29-action_1020 (220) = happyGoto action_30-action_1020 (221) = happyGoto action_106-action_1020 (227) = happyGoto action_32-action_1020 (229) = happyGoto action_33-action_1020 (230) = happyGoto action_34-action_1020 (233) = happyGoto action_35-action_1020 _ = happyFail--action_1021 _ = happyReduce_445--action_1022 _ = happyReduce_372--action_1023 _ = happyReduce_473--action_1024 _ = happyReduce_476--action_1025 (268) = happyShift action_762-action_1025 (74) = happyGoto action_1039-action_1025 _ = happyReduce_171--action_1026 (313) = happyShift action_440-action_1026 (177) = happyGoto action_479-action_1026 _ = happyReduce_479--action_1027 (244) = happyShift action_36-action_1027 (245) = happyShift action_37-action_1027 (246) = happyShift action_38-action_1027 (251) = happyShift action_39-action_1027 (253) = happyShift action_40-action_1027 (254) = happyShift action_41-action_1027 (261) = happyShift action_45-action_1027 (265) = happyShift action_46-action_1027 (269) = happyShift action_47-action_1027 (270) = happyShift action_48-action_1027 (272) = happyShift action_49-action_1027 (273) = happyShift action_50-action_1027 (274) = happyShift action_51-action_1027 (275) = happyShift action_52-action_1027 (276) = happyShift action_53-action_1027 (277) = happyShift action_54-action_1027 (278) = happyShift action_55-action_1027 (279) = happyShift action_56-action_1027 (280) = happyShift action_57-action_1027 (281) = happyShift action_58-action_1027 (282) = happyShift action_59-action_1027 (283) = happyShift action_60-action_1027 (284) = happyShift action_61-action_1027 (286) = happyShift action_62-action_1027 (294) = happyShift action_66-action_1027 (295) = happyShift action_67-action_1027 (296) = happyShift action_68-action_1027 (311) = happyShift action_69-action_1027 (317) = happyShift action_70-action_1027 (320) = happyShift action_71-action_1027 (332) = happyShift action_72-action_1027 (334) = happyShift action_73-action_1027 (336) = happyShift action_107-action_1027 (338) = happyShift action_75-action_1027 (340) = happyShift action_76-action_1027 (345) = happyShift action_77-action_1027 (346) = happyShift action_78-action_1027 (347) = happyShift action_79-action_1027 (350) = happyShift action_80-action_1027 (351) = happyShift action_81-action_1027 (354) = happyShift action_82-action_1027 (355) = happyShift action_83-action_1027 (356) = happyShift action_84-action_1027 (357) = happyShift action_85-action_1027 (358) = happyShift action_86-action_1027 (359) = happyShift action_87-action_1027 (360) = happyShift action_88-action_1027 (361) = happyShift action_89-action_1027 (362) = happyShift action_90-action_1027 (363) = happyShift action_91-action_1027 (364) = happyShift action_92-action_1027 (365) = happyShift action_93-action_1027 (366) = happyShift action_94-action_1027 (371) = happyShift action_95-action_1027 (372) = happyShift action_96-action_1027 (373) = happyShift action_97-action_1027 (374) = happyShift action_98-action_1027 (376) = happyShift action_99-action_1027 (377) = happyShift action_100-action_1027 (378) = happyShift action_101-action_1027 (379) = happyShift action_102-action_1027 (380) = happyShift action_103-action_1027 (38) = happyGoto action_13-action_1027 (142) = happyGoto action_16-action_1027 (143) = happyGoto action_1038-action_1027 (144) = happyGoto action_105-action_1027 (145) = happyGoto action_18-action_1027 (147) = happyGoto action_19-action_1027 (148) = happyGoto action_20-action_1027 (149) = happyGoto action_21-action_1027 (150) = happyGoto action_22-action_1027 (151) = happyGoto action_23-action_1027 (152) = happyGoto action_24-action_1027 (192) = happyGoto action_25-action_1027 (195) = happyGoto action_26-action_1027 (198) = happyGoto action_27-action_1027 (219) = happyGoto action_29-action_1027 (220) = happyGoto action_30-action_1027 (221) = happyGoto action_106-action_1027 (227) = happyGoto action_32-action_1027 (229) = happyGoto action_33-action_1027 (230) = happyGoto action_34-action_1027 (233) = happyGoto action_35-action_1027 _ = happyFail--action_1028 (359) = happyShift action_1037-action_1028 _ = happyFail--action_1029 _ = happyReduce_360--action_1030 _ = happyReduce_359--action_1031 (245) = happyShift action_37-action_1031 (253) = happyShift action_40-action_1031 (265) = happyShift action_46-action_1031 (270) = happyShift action_179-action_1031 (272) = happyShift action_49-action_1031 (273) = happyShift action_50-action_1031 (274) = happyShift action_51-action_1031 (275) = happyShift action_180-action_1031 (276) = happyShift action_181-action_1031 (277) = happyShift action_182-action_1031 (280) = happyShift action_57-action_1031 (281) = happyShift action_58-action_1031 (282) = happyShift action_59-action_1031 (283) = happyShift action_60-action_1031 (286) = happyShift action_62-action_1031 (299) = happyShift action_183-action_1031 (300) = happyShift action_184-action_1031 (321) = happyShift action_185-action_1031 (328) = happyShift action_186-action_1031 (332) = happyShift action_187-action_1031 (334) = happyShift action_188-action_1031 (336) = happyShift action_189-action_1031 (338) = happyShift action_190-action_1031 (345) = happyShift action_191-action_1031 (346) = happyShift action_192-action_1031 (347) = happyShift action_193-action_1031 (351) = happyShift action_194-action_1031 (355) = happyShift action_195-action_1031 (356) = happyShift action_84-action_1031 (358) = happyShift action_196-action_1031 (359) = happyShift action_197-action_1031 (376) = happyShift action_198-action_1031 (377) = happyShift action_199-action_1031 (379) = happyShift action_102-action_1031 (380) = happyShift action_103-action_1031 (95) = happyGoto action_857-action_1031 (98) = happyGoto action_1036-action_1031 (100) = happyGoto action_164-action_1031 (101) = happyGoto action_350-action_1031 (103) = happyGoto action_166-action_1031 (104) = happyGoto action_167-action_1031 (106) = happyGoto action_168-action_1031 (107) = happyGoto action_169-action_1031 (142) = happyGoto action_170-action_1031 (192) = happyGoto action_171-action_1031 (202) = happyGoto action_172-action_1031 (203) = happyGoto action_173-action_1031 (205) = happyGoto action_174-action_1031 (206) = happyGoto action_175-action_1031 (215) = happyGoto action_176-action_1031 (217) = happyGoto action_177-action_1031 (227) = happyGoto action_178-action_1031 _ = happyFail--action_1032 (252) = happyShift action_1035-action_1032 _ = happyFail--action_1033 _ = happyReduce_258--action_1034 _ = happyReduce_257--action_1035 (244) = happyShift action_36-action_1035 (245) = happyShift action_37-action_1035 (246) = happyShift action_38-action_1035 (251) = happyShift action_39-action_1035 (253) = happyShift action_40-action_1035 (254) = happyShift action_41-action_1035 (261) = happyShift action_45-action_1035 (265) = happyShift action_46-action_1035 (269) = happyShift action_47-action_1035 (270) = happyShift action_48-action_1035 (272) = happyShift action_49-action_1035 (273) = happyShift action_50-action_1035 (274) = happyShift action_51-action_1035 (275) = happyShift action_52-action_1035 (276) = happyShift action_53-action_1035 (277) = happyShift action_54-action_1035 (278) = happyShift action_55-action_1035 (279) = happyShift action_56-action_1035 (280) = happyShift action_57-action_1035 (281) = happyShift action_58-action_1035 (282) = happyShift action_59-action_1035 (283) = happyShift action_60-action_1035 (284) = happyShift action_61-action_1035 (286) = happyShift action_62-action_1035 (294) = happyShift action_66-action_1035 (295) = happyShift action_67-action_1035 (296) = happyShift action_68-action_1035 (311) = happyShift action_69-action_1035 (317) = happyShift action_70-action_1035 (320) = happyShift action_71-action_1035 (332) = happyShift action_72-action_1035 (334) = happyShift action_73-action_1035 (336) = happyShift action_107-action_1035 (338) = happyShift action_75-action_1035 (340) = happyShift action_76-action_1035 (345) = happyShift action_77-action_1035 (346) = happyShift action_78-action_1035 (347) = happyShift action_79-action_1035 (350) = happyShift action_80-action_1035 (351) = happyShift action_81-action_1035 (354) = happyShift action_82-action_1035 (355) = happyShift action_83-action_1035 (356) = happyShift action_84-action_1035 (357) = happyShift action_85-action_1035 (358) = happyShift action_86-action_1035 (359) = happyShift action_87-action_1035 (360) = happyShift action_88-action_1035 (361) = happyShift action_89-action_1035 (362) = happyShift action_90-action_1035 (363) = happyShift action_91-action_1035 (364) = happyShift action_92-action_1035 (365) = happyShift action_93-action_1035 (366) = happyShift action_94-action_1035 (371) = happyShift action_95-action_1035 (372) = happyShift action_96-action_1035 (373) = happyShift action_97-action_1035 (374) = happyShift action_98-action_1035 (376) = happyShift action_99-action_1035 (377) = happyShift action_100-action_1035 (378) = happyShift action_101-action_1035 (379) = happyShift action_102-action_1035 (380) = happyShift action_103-action_1035 (38) = happyGoto action_13-action_1035 (142) = happyGoto action_16-action_1035 (143) = happyGoto action_1130-action_1035 (144) = happyGoto action_105-action_1035 (145) = happyGoto action_18-action_1035 (147) = happyGoto action_19-action_1035 (148) = happyGoto action_20-action_1035 (149) = happyGoto action_21-action_1035 (150) = happyGoto action_22-action_1035 (151) = happyGoto action_23-action_1035 (152) = happyGoto action_24-action_1035 (192) = happyGoto action_25-action_1035 (195) = happyGoto action_26-action_1035 (198) = happyGoto action_27-action_1035 (219) = happyGoto action_29-action_1035 (220) = happyGoto action_30-action_1035 (221) = happyGoto action_106-action_1035 (227) = happyGoto action_32-action_1035 (229) = happyGoto action_33-action_1035 (230) = happyGoto action_34-action_1035 (233) = happyGoto action_35-action_1035 _ = happyFail--action_1036 _ = happyReduce_225--action_1037 (308) = happyShift action_1129-action_1037 _ = happyFail--action_1038 _ = happyReduce_478--action_1039 _ = happyReduce_477--action_1040 _ = happyReduce_457--action_1041 _ = happyReduce_458--action_1042 (288) = happyShift action_1128-action_1042 _ = happyFail--action_1043 _ = happyReduce_13--action_1044 (244) = happyShift action_36-action_1044 (245) = happyShift action_37-action_1044 (246) = happyShift action_38-action_1044 (247) = happyShift action_130-action_1044 (248) = happyShift action_131-action_1044 (249) = happyShift action_132-action_1044 (250) = happyShift action_133-action_1044 (251) = happyShift action_39-action_1044 (253) = happyShift action_40-action_1044 (254) = happyShift action_41-action_1044 (255) = happyShift action_151-action_1044 (257) = happyShift action_42-action_1044 (258) = happyShift action_43-action_1044 (259) = happyShift action_44-action_1044 (260) = happyShift action_134-action_1044 (261) = happyShift action_45-action_1044 (263) = happyShift action_135-action_1044 (265) = happyShift action_46-action_1044 (267) = happyShift action_136-action_1044 (269) = happyShift action_47-action_1044 (270) = happyShift action_48-action_1044 (271) = happyShift action_137-action_1044 (272) = happyShift action_49-action_1044 (273) = happyShift action_50-action_1044 (274) = happyShift action_51-action_1044 (275) = happyShift action_52-action_1044 (276) = happyShift action_53-action_1044 (277) = happyShift action_54-action_1044 (278) = happyShift action_55-action_1044 (279) = happyShift action_56-action_1044 (280) = happyShift action_57-action_1044 (281) = happyShift action_58-action_1044 (282) = happyShift action_59-action_1044 (283) = happyShift action_60-action_1044 (284) = happyShift action_61-action_1044 (286) = happyShift action_62-action_1044 (289) = happyShift action_63-action_1044 (290) = happyShift action_64-action_1044 (291) = happyShift action_65-action_1044 (293) = happyShift action_138-action_1044 (294) = happyShift action_66-action_1044 (295) = happyShift action_67-action_1044 (296) = happyShift action_68-action_1044 (297) = happyShift action_139-action_1044 (298) = happyShift action_140-action_1044 (301) = happyShift action_141-action_1044 (302) = happyShift action_142-action_1044 (303) = happyShift action_143-action_1044 (304) = happyShift action_144-action_1044 (311) = happyShift action_69-action_1044 (317) = happyShift action_70-action_1044 (320) = happyShift action_71-action_1044 (321) = happyShift action_145-action_1044 (332) = happyShift action_72-action_1044 (334) = happyShift action_73-action_1044 (336) = happyShift action_74-action_1044 (338) = happyShift action_75-action_1044 (340) = happyShift action_76-action_1044 (345) = happyShift action_77-action_1044 (346) = happyShift action_78-action_1044 (347) = happyShift action_79-action_1044 (350) = happyShift action_80-action_1044 (351) = happyShift action_81-action_1044 (354) = happyShift action_82-action_1044 (355) = happyShift action_83-action_1044 (356) = happyShift action_84-action_1044 (357) = happyShift action_85-action_1044 (358) = happyShift action_86-action_1044 (359) = happyShift action_87-action_1044 (360) = happyShift action_88-action_1044 (361) = happyShift action_89-action_1044 (362) = happyShift action_90-action_1044 (363) = happyShift action_91-action_1044 (364) = happyShift action_92-action_1044 (365) = happyShift action_93-action_1044 (366) = happyShift action_94-action_1044 (367) = happyShift action_146-action_1044 (368) = happyShift action_147-action_1044 (369) = happyShift action_148-action_1044 (370) = happyShift action_149-action_1044 (371) = happyShift action_95-action_1044 (372) = happyShift action_96-action_1044 (373) = happyShift action_97-action_1044 (374) = happyShift action_98-action_1044 (376) = happyShift action_99-action_1044 (377) = happyShift action_100-action_1044 (378) = happyShift action_101-action_1044 (379) = happyShift action_102-action_1044 (380) = happyShift action_103-action_1044 (24) = happyGoto action_1127-action_1044 (25) = happyGoto action_233-action_1044 (38) = happyGoto action_13-action_1044 (39) = happyGoto action_234-action_1044 (40) = happyGoto action_235-action_1044 (49) = happyGoto action_14-action_1044 (51) = happyGoto action_236-action_1044 (52) = happyGoto action_237-action_1044 (53) = happyGoto action_115-action_1044 (54) = happyGoto action_116-action_1044 (55) = happyGoto action_117-action_1044 (58) = happyGoto action_118-action_1044 (62) = happyGoto action_119-action_1044 (88) = happyGoto action_120-action_1044 (135) = happyGoto action_121-action_1044 (136) = happyGoto action_122-action_1044 (137) = happyGoto action_123-action_1044 (141) = happyGoto action_124-action_1044 (142) = happyGoto action_16-action_1044 (144) = happyGoto action_125-action_1044 (145) = happyGoto action_18-action_1044 (147) = happyGoto action_19-action_1044 (148) = happyGoto action_20-action_1044 (149) = happyGoto action_21-action_1044 (150) = happyGoto action_22-action_1044 (151) = happyGoto action_23-action_1044 (152) = happyGoto action_24-action_1044 (192) = happyGoto action_25-action_1044 (195) = happyGoto action_26-action_1044 (198) = happyGoto action_27-action_1044 (218) = happyGoto action_28-action_1044 (219) = happyGoto action_29-action_1044 (220) = happyGoto action_30-action_1044 (221) = happyGoto action_31-action_1044 (227) = happyGoto action_32-action_1044 (229) = happyGoto action_33-action_1044 (230) = happyGoto action_34-action_1044 (233) = happyGoto action_35-action_1044 (237) = happyGoto action_126-action_1044 (238) = happyGoto action_127-action_1044 (239) = happyGoto action_128-action_1044 (240) = happyGoto action_129-action_1044 _ = happyReduce_68--action_1045 (244) = happyShift action_36-action_1045 (245) = happyShift action_37-action_1045 (246) = happyShift action_38-action_1045 (247) = happyShift action_130-action_1045 (248) = happyShift action_131-action_1045 (249) = happyShift action_132-action_1045 (250) = happyShift action_133-action_1045 (251) = happyShift action_39-action_1045 (253) = happyShift action_40-action_1045 (254) = happyShift action_41-action_1045 (255) = happyShift action_151-action_1045 (257) = happyShift action_42-action_1045 (258) = happyShift action_43-action_1045 (259) = happyShift action_44-action_1045 (260) = happyShift action_134-action_1045 (261) = happyShift action_45-action_1045 (263) = happyShift action_135-action_1045 (265) = happyShift action_46-action_1045 (267) = happyShift action_136-action_1045 (269) = happyShift action_47-action_1045 (270) = happyShift action_48-action_1045 (271) = happyShift action_137-action_1045 (272) = happyShift action_49-action_1045 (273) = happyShift action_50-action_1045 (274) = happyShift action_51-action_1045 (275) = happyShift action_52-action_1045 (276) = happyShift action_53-action_1045 (277) = happyShift action_54-action_1045 (278) = happyShift action_55-action_1045 (279) = happyShift action_56-action_1045 (280) = happyShift action_57-action_1045 (281) = happyShift action_58-action_1045 (282) = happyShift action_59-action_1045 (283) = happyShift action_60-action_1045 (284) = happyShift action_61-action_1045 (286) = happyShift action_62-action_1045 (289) = happyShift action_63-action_1045 (290) = happyShift action_64-action_1045 (291) = happyShift action_65-action_1045 (293) = happyShift action_138-action_1045 (294) = happyShift action_66-action_1045 (295) = happyShift action_67-action_1045 (296) = happyShift action_68-action_1045 (297) = happyShift action_139-action_1045 (298) = happyShift action_140-action_1045 (301) = happyShift action_141-action_1045 (302) = happyShift action_142-action_1045 (303) = happyShift action_143-action_1045 (304) = happyShift action_144-action_1045 (311) = happyShift action_69-action_1045 (317) = happyShift action_70-action_1045 (320) = happyShift action_71-action_1045 (321) = happyShift action_145-action_1045 (332) = happyShift action_72-action_1045 (334) = happyShift action_73-action_1045 (336) = happyShift action_74-action_1045 (338) = happyShift action_75-action_1045 (340) = happyShift action_76-action_1045 (345) = happyShift action_77-action_1045 (346) = happyShift action_78-action_1045 (347) = happyShift action_79-action_1045 (350) = happyShift action_80-action_1045 (351) = happyShift action_81-action_1045 (354) = happyShift action_82-action_1045 (355) = happyShift action_83-action_1045 (356) = happyShift action_84-action_1045 (357) = happyShift action_85-action_1045 (358) = happyShift action_86-action_1045 (359) = happyShift action_87-action_1045 (360) = happyShift action_88-action_1045 (361) = happyShift action_89-action_1045 (362) = happyShift action_90-action_1045 (363) = happyShift action_91-action_1045 (364) = happyShift action_92-action_1045 (365) = happyShift action_93-action_1045 (366) = happyShift action_94-action_1045 (367) = happyShift action_146-action_1045 (368) = happyShift action_147-action_1045 (369) = happyShift action_148-action_1045 (370) = happyShift action_149-action_1045 (371) = happyShift action_95-action_1045 (372) = happyShift action_96-action_1045 (373) = happyShift action_97-action_1045 (374) = happyShift action_98-action_1045 (376) = happyShift action_99-action_1045 (377) = happyShift action_100-action_1045 (378) = happyShift action_101-action_1045 (379) = happyShift action_102-action_1045 (380) = happyShift action_103-action_1045 (24) = happyGoto action_1126-action_1045 (25) = happyGoto action_233-action_1045 (38) = happyGoto action_13-action_1045 (39) = happyGoto action_234-action_1045 (40) = happyGoto action_235-action_1045 (49) = happyGoto action_14-action_1045 (51) = happyGoto action_236-action_1045 (52) = happyGoto action_237-action_1045 (53) = happyGoto action_115-action_1045 (54) = happyGoto action_116-action_1045 (55) = happyGoto action_117-action_1045 (58) = happyGoto action_118-action_1045 (62) = happyGoto action_119-action_1045 (88) = happyGoto action_120-action_1045 (135) = happyGoto action_121-action_1045 (136) = happyGoto action_122-action_1045 (137) = happyGoto action_123-action_1045 (141) = happyGoto action_124-action_1045 (142) = happyGoto action_16-action_1045 (144) = happyGoto action_125-action_1045 (145) = happyGoto action_18-action_1045 (147) = happyGoto action_19-action_1045 (148) = happyGoto action_20-action_1045 (149) = happyGoto action_21-action_1045 (150) = happyGoto action_22-action_1045 (151) = happyGoto action_23-action_1045 (152) = happyGoto action_24-action_1045 (192) = happyGoto action_25-action_1045 (195) = happyGoto action_26-action_1045 (198) = happyGoto action_27-action_1045 (218) = happyGoto action_28-action_1045 (219) = happyGoto action_29-action_1045 (220) = happyGoto action_30-action_1045 (221) = happyGoto action_31-action_1045 (227) = happyGoto action_32-action_1045 (229) = happyGoto action_33-action_1045 (230) = happyGoto action_34-action_1045 (233) = happyGoto action_35-action_1045 (237) = happyGoto action_126-action_1045 (238) = happyGoto action_127-action_1045 (239) = happyGoto action_128-action_1045 (240) = happyGoto action_129-action_1045 _ = happyReduce_68--action_1046 _ = happyReduce_48--action_1047 (367) = happyShift action_146-action_1047 (369) = happyShift action_148-action_1047 (370) = happyShift action_149-action_1047 (32) = happyGoto action_1125-action_1047 (33) = happyGoto action_1009-action_1047 (237) = happyGoto action_1010-action_1047 (239) = happyGoto action_1011-action_1047 (240) = happyGoto action_1012-action_1047 _ = happyReduce_49--action_1048 (336) = happyShift action_1124-action_1048 (35) = happyGoto action_1123-action_1048 _ = happyReduce_55--action_1049 _ = happyReduce_61--action_1050 (347) = happyShift action_544-action_1050 (351) = happyShift action_545-action_1050 (235) = happyGoto action_1122-action_1050 _ = happyFail--action_1051 (245) = happyShift action_37-action_1051 (253) = happyShift action_40-action_1051 (265) = happyShift action_46-action_1051 (270) = happyShift action_48-action_1051 (272) = happyShift action_49-action_1051 (273) = happyShift action_50-action_1051 (274) = happyShift action_51-action_1051 (275) = happyShift action_52-action_1051 (276) = happyShift action_53-action_1051 (277) = happyShift action_54-action_1051 (279) = happyShift action_56-action_1051 (280) = happyShift action_57-action_1051 (281) = happyShift action_58-action_1051 (282) = happyShift action_59-action_1051 (283) = happyShift action_60-action_1051 (286) = happyShift action_62-action_1051 (332) = happyShift action_217-action_1051 (336) = happyShift action_402-action_1051 (338) = happyShift action_219-action_1051 (346) = happyShift action_78-action_1051 (347) = happyShift action_79-action_1051 (350) = happyShift action_80-action_1051 (351) = happyShift action_81-action_1051 (354) = happyShift action_82-action_1051 (355) = happyShift action_83-action_1051 (38) = happyGoto action_1121-action_1051 (195) = happyGoto action_26-action_1051 (198) = happyGoto action_27-action_1051 (219) = happyGoto action_404-action_1051 (220) = happyGoto action_30-action_1051 (221) = happyGoto action_106-action_1051 (227) = happyGoto action_32-action_1051 (229) = happyGoto action_33-action_1051 (230) = happyGoto action_34-action_1051 _ = happyFail--action_1052 (367) = happyShift action_146-action_1052 (369) = happyShift action_148-action_1052 (370) = happyShift action_149-action_1052 (32) = happyGoto action_1120-action_1052 (33) = happyGoto action_1009-action_1052 (237) = happyGoto action_1010-action_1052 (239) = happyGoto action_1011-action_1052 (240) = happyGoto action_1012-action_1052 _ = happyReduce_49--action_1053 _ = happyReduce_41--action_1054 (343) = happyShift action_1119-action_1054 _ = happyReduce_284--action_1055 (337) = happyShift action_1118-action_1055 _ = happyFail--action_1056 _ = happyReduce_339--action_1057 (1) = happyShift action_664-action_1057 (331) = happyShift action_665-action_1057 (234) = happyGoto action_1117-action_1057 _ = happyFail--action_1058 (342) = happyShift action_1116-action_1058 _ = happyReduce_319--action_1059 (343) = happyShift action_1115-action_1059 _ = happyReduce_525--action_1060 (309) = happyShift action_1114-action_1060 _ = happyFail--action_1061 (328) = happyShift action_1113-action_1061 _ = happyFail--action_1062 (308) = happyShift action_212-action_1062 (317) = happyShift action_265-action_1062 (322) = happyShift action_267-action_1062 (337) = happyShift action_250-action_1062 (343) = happyShift action_244-action_1062 (348) = happyShift action_269-action_1062 (349) = happyShift action_1112-action_1062 (352) = happyShift action_271-action_1062 (353) = happyShift action_272-action_1062 (207) = happyGoto action_261-action_1062 (208) = happyGoto action_262-action_1062 (232) = happyGoto action_592-action_1062 (236) = happyGoto action_248-action_1062 _ = happyFail--action_1063 (328) = happyReduce_554-action_1063 _ = happyReduce_622--action_1064 (329) = happyShift action_1111-action_1064 _ = happyFail--action_1065 (245) = happyShift action_37-action_1065 (253) = happyShift action_40-action_1065 (265) = happyShift action_46-action_1065 (272) = happyShift action_49-action_1065 (273) = happyShift action_50-action_1065 (274) = happyShift action_51-action_1065 (275) = happyShift action_180-action_1065 (276) = happyShift action_181-action_1065 (277) = happyShift action_182-action_1065 (280) = happyShift action_57-action_1065 (281) = happyShift action_58-action_1065 (282) = happyShift action_59-action_1065 (283) = happyShift action_60-action_1065 (286) = happyShift action_62-action_1065 (299) = happyShift action_183-action_1065 (300) = happyShift action_184-action_1065 (321) = happyShift action_185-action_1065 (328) = happyShift action_186-action_1065 (332) = happyShift action_187-action_1065 (334) = happyShift action_188-action_1065 (336) = happyShift action_189-action_1065 (338) = happyShift action_190-action_1065 (345) = happyShift action_191-action_1065 (346) = happyShift action_192-action_1065 (347) = happyShift action_193-action_1065 (351) = happyShift action_194-action_1065 (355) = happyShift action_195-action_1065 (358) = happyShift action_196-action_1065 (359) = happyShift action_197-action_1065 (376) = happyShift action_198-action_1065 (377) = happyShift action_199-action_1065 (379) = happyShift action_102-action_1065 (380) = happyShift action_103-action_1065 (100) = happyGoto action_164-action_1065 (103) = happyGoto action_1108-action_1065 (106) = happyGoto action_1109-action_1065 (107) = happyGoto action_169-action_1065 (130) = happyGoto action_1110-action_1065 (142) = happyGoto action_170-action_1065 (202) = happyGoto action_172-action_1065 (203) = happyGoto action_173-action_1065 (205) = happyGoto action_174-action_1065 (206) = happyGoto action_175-action_1065 (215) = happyGoto action_176-action_1065 (217) = happyGoto action_177-action_1065 (227) = happyGoto action_178-action_1065 _ = happyFail--action_1066 (245) = happyShift action_37-action_1066 (253) = happyShift action_40-action_1066 (265) = happyShift action_46-action_1066 (272) = happyShift action_49-action_1066 (273) = happyShift action_50-action_1066 (274) = happyShift action_51-action_1066 (275) = happyShift action_180-action_1066 (276) = happyShift action_181-action_1066 (277) = happyShift action_182-action_1066 (280) = happyShift action_57-action_1066 (281) = happyShift action_58-action_1066 (282) = happyShift action_59-action_1066 (283) = happyShift action_60-action_1066 (286) = happyShift action_62-action_1066 (336) = happyShift action_287-action_1066 (346) = happyShift action_192-action_1066 (112) = happyGoto action_1107-action_1066 (113) = happyGoto action_285-action_1066 (215) = happyGoto action_286-action_1066 (217) = happyGoto action_177-action_1066 (227) = happyGoto action_178-action_1066 _ = happyReduce_291--action_1067 (313) = happyShift action_1106-action_1067 _ = happyFail--action_1068 _ = happyReduce_147--action_1069 (244) = happyShift action_36-action_1069 (245) = happyShift action_37-action_1069 (246) = happyShift action_38-action_1069 (248) = happyShift action_986-action_1069 (249) = happyShift action_987-action_1069 (251) = happyShift action_39-action_1069 (253) = happyShift action_40-action_1069 (254) = happyShift action_41-action_1069 (257) = happyShift action_42-action_1069 (258) = happyShift action_43-action_1069 (259) = happyShift action_44-action_1069 (261) = happyShift action_45-action_1069 (265) = happyShift action_46-action_1069 (267) = happyShift action_988-action_1069 (269) = happyShift action_47-action_1069 (270) = happyShift action_48-action_1069 (272) = happyShift action_49-action_1069 (273) = happyShift action_50-action_1069 (274) = happyShift action_51-action_1069 (275) = happyShift action_52-action_1069 (276) = happyShift action_53-action_1069 (277) = happyShift action_54-action_1069 (278) = happyShift action_55-action_1069 (279) = happyShift action_56-action_1069 (280) = happyShift action_57-action_1069 (281) = happyShift action_58-action_1069 (282) = happyShift action_59-action_1069 (283) = happyShift action_60-action_1069 (284) = happyShift action_61-action_1069 (286) = happyShift action_62-action_1069 (289) = happyShift action_63-action_1069 (290) = happyShift action_64-action_1069 (291) = happyShift action_65-action_1069 (294) = happyShift action_66-action_1069 (295) = happyShift action_67-action_1069 (296) = happyShift action_68-action_1069 (311) = happyShift action_69-action_1069 (317) = happyShift action_70-action_1069 (320) = happyShift action_71-action_1069 (321) = happyShift action_145-action_1069 (332) = happyShift action_72-action_1069 (334) = happyShift action_73-action_1069 (336) = happyShift action_74-action_1069 (338) = happyShift action_75-action_1069 (340) = happyShift action_76-action_1069 (345) = happyShift action_77-action_1069 (346) = happyShift action_78-action_1069 (347) = happyShift action_79-action_1069 (350) = happyShift action_80-action_1069 (351) = happyShift action_81-action_1069 (354) = happyShift action_82-action_1069 (355) = happyShift action_83-action_1069 (356) = happyShift action_84-action_1069 (357) = happyShift action_85-action_1069 (358) = happyShift action_86-action_1069 (359) = happyShift action_87-action_1069 (360) = happyShift action_88-action_1069 (361) = happyShift action_89-action_1069 (362) = happyShift action_90-action_1069 (363) = happyShift action_91-action_1069 (364) = happyShift action_92-action_1069 (365) = happyShift action_93-action_1069 (366) = happyShift action_94-action_1069 (367) = happyShift action_146-action_1069 (368) = happyShift action_147-action_1069 (369) = happyShift action_148-action_1069 (370) = happyShift action_149-action_1069 (371) = happyShift action_95-action_1069 (372) = happyShift action_96-action_1069 (373) = happyShift action_97-action_1069 (374) = happyShift action_98-action_1069 (376) = happyShift action_99-action_1069 (377) = happyShift action_100-action_1069 (378) = happyShift action_101-action_1069 (379) = happyShift action_102-action_1069 (380) = happyShift action_103-action_1069 (38) = happyGoto action_13-action_1069 (49) = happyGoto action_14-action_1069 (56) = happyGoto action_982-action_1069 (63) = happyGoto action_1105-action_1069 (135) = happyGoto action_121-action_1069 (136) = happyGoto action_122-action_1069 (137) = happyGoto action_985-action_1069 (141) = happyGoto action_124-action_1069 (142) = happyGoto action_16-action_1069 (144) = happyGoto action_125-action_1069 (145) = happyGoto action_18-action_1069 (147) = happyGoto action_19-action_1069 (148) = happyGoto action_20-action_1069 (149) = happyGoto action_21-action_1069 (150) = happyGoto action_22-action_1069 (151) = happyGoto action_23-action_1069 (152) = happyGoto action_24-action_1069 (192) = happyGoto action_25-action_1069 (195) = happyGoto action_26-action_1069 (198) = happyGoto action_27-action_1069 (218) = happyGoto action_28-action_1069 (219) = happyGoto action_29-action_1069 (220) = happyGoto action_30-action_1069 (221) = happyGoto action_31-action_1069 (227) = happyGoto action_32-action_1069 (229) = happyGoto action_33-action_1069 (230) = happyGoto action_34-action_1069 (233) = happyGoto action_35-action_1069 (237) = happyGoto action_126-action_1069 (238) = happyGoto action_127-action_1069 (239) = happyGoto action_128-action_1069 (240) = happyGoto action_129-action_1069 _ = happyReduce_144--action_1070 (309) = happyShift action_746-action_1070 (310) = happyShift action_1104-action_1070 (59) = happyGoto action_1103-action_1070 _ = happyReduce_132--action_1071 (308) = happyShift action_212-action_1071 (309) = happyShift action_1102-action_1071 (320) = happyShift action_213-action_1071 (321) = happyShift action_214-action_1071 (322) = happyShift action_215-action_1071 (327) = happyShift action_216-action_1071 (344) = happyShift action_220-action_1071 (348) = happyShift action_221-action_1071 (349) = happyShift action_222-action_1071 (352) = happyShift action_223-action_1071 (353) = happyShift action_224-action_1071 (200) = happyGoto action_359-action_1071 (211) = happyGoto action_360-action_1071 (213) = happyGoto action_361-action_1071 (222) = happyGoto action_205-action_1071 (224) = happyGoto action_206-action_1071 (225) = happyGoto action_207-action_1071 (226) = happyGoto action_208-action_1071 (228) = happyGoto action_209-action_1071 (231) = happyGoto action_210-action_1071 (232) = happyGoto action_211-action_1071 _ = happyFail--action_1072 (309) = happyShift action_746-action_1072 (59) = happyGoto action_1101-action_1072 _ = happyReduce_132--action_1073 _ = happyReduce_148--action_1074 (309) = happyShift action_746-action_1074 (310) = happyReduce_649-action_1074 (367) = happyShift action_146-action_1074 (59) = happyGoto action_1099-action_1074 (126) = happyGoto action_1100-action_1074 (237) = happyGoto action_280-action_1074 (243) = happyGoto action_774-action_1074 _ = happyReduce_132--action_1075 (245) = happyShift action_37-action_1075 (253) = happyShift action_40-action_1075 (265) = happyShift action_46-action_1075 (270) = happyShift action_179-action_1075 (272) = happyShift action_49-action_1075 (273) = happyShift action_50-action_1075 (274) = happyShift action_51-action_1075 (275) = happyShift action_180-action_1075 (276) = happyShift action_181-action_1075 (277) = happyShift action_182-action_1075 (280) = happyShift action_57-action_1075 (281) = happyShift action_58-action_1075 (282) = happyShift action_59-action_1075 (283) = happyShift action_60-action_1075 (286) = happyShift action_62-action_1075 (299) = happyShift action_183-action_1075 (300) = happyShift action_184-action_1075 (321) = happyShift action_185-action_1075 (328) = happyShift action_186-action_1075 (332) = happyShift action_187-action_1075 (334) = happyShift action_188-action_1075 (336) = happyShift action_189-action_1075 (338) = happyShift action_190-action_1075 (345) = happyShift action_191-action_1075 (346) = happyShift action_192-action_1075 (347) = happyShift action_193-action_1075 (351) = happyShift action_194-action_1075 (355) = happyShift action_195-action_1075 (356) = happyShift action_84-action_1075 (358) = happyShift action_196-action_1075 (359) = happyShift action_197-action_1075 (376) = happyShift action_198-action_1075 (377) = happyShift action_199-action_1075 (379) = happyShift action_102-action_1075 (380) = happyShift action_103-action_1075 (100) = happyGoto action_164-action_1075 (101) = happyGoto action_1098-action_1075 (103) = happyGoto action_166-action_1075 (104) = happyGoto action_167-action_1075 (106) = happyGoto action_168-action_1075 (107) = happyGoto action_169-action_1075 (142) = happyGoto action_170-action_1075 (192) = happyGoto action_171-action_1075 (202) = happyGoto action_172-action_1075 (203) = happyGoto action_173-action_1075 (205) = happyGoto action_174-action_1075 (206) = happyGoto action_175-action_1075 (215) = happyGoto action_176-action_1075 (217) = happyGoto action_177-action_1075 (227) = happyGoto action_178-action_1075 _ = happyFail--action_1076 _ = happyReduce_153--action_1077 _ = happyReduce_214--action_1078 (245) = happyShift action_37-action_1078 (253) = happyShift action_40-action_1078 (265) = happyShift action_46-action_1078 (270) = happyShift action_179-action_1078 (272) = happyShift action_49-action_1078 (273) = happyShift action_50-action_1078 (274) = happyShift action_51-action_1078 (275) = happyShift action_180-action_1078 (276) = happyShift action_181-action_1078 (277) = happyShift action_182-action_1078 (280) = happyShift action_57-action_1078 (281) = happyShift action_58-action_1078 (282) = happyShift action_59-action_1078 (283) = happyShift action_60-action_1078 (286) = happyShift action_62-action_1078 (299) = happyShift action_183-action_1078 (300) = happyShift action_184-action_1078 (321) = happyShift action_185-action_1078 (328) = happyShift action_186-action_1078 (332) = happyShift action_187-action_1078 (334) = happyShift action_188-action_1078 (336) = happyShift action_189-action_1078 (338) = happyShift action_190-action_1078 (345) = happyShift action_191-action_1078 (346) = happyShift action_192-action_1078 (347) = happyShift action_193-action_1078 (351) = happyShift action_194-action_1078 (355) = happyShift action_195-action_1078 (356) = happyShift action_84-action_1078 (358) = happyShift action_196-action_1078 (359) = happyShift action_197-action_1078 (376) = happyShift action_198-action_1078 (377) = happyShift action_199-action_1078 (379) = happyShift action_102-action_1078 (380) = happyShift action_103-action_1078 (100) = happyGoto action_164-action_1078 (101) = happyGoto action_1097-action_1078 (103) = happyGoto action_166-action_1078 (104) = happyGoto action_167-action_1078 (106) = happyGoto action_168-action_1078 (107) = happyGoto action_169-action_1078 (142) = happyGoto action_170-action_1078 (192) = happyGoto action_171-action_1078 (202) = happyGoto action_172-action_1078 (203) = happyGoto action_173-action_1078 (205) = happyGoto action_174-action_1078 (206) = happyGoto action_175-action_1078 (215) = happyGoto action_176-action_1078 (217) = happyGoto action_177-action_1078 (227) = happyGoto action_178-action_1078 _ = happyFail--action_1079 _ = happyReduce_176--action_1080 (253) = happyShift action_1095-action_1080 (336) = happyShift action_1096-action_1080 (46) = happyGoto action_1093-action_1080 (47) = happyGoto action_1094-action_1080 _ = happyReduce_81--action_1081 (347) = happyShift action_544-action_1081 (351) = happyShift action_545-action_1081 (235) = happyGoto action_1092-action_1081 _ = happyFail--action_1082 _ = happyReduce_35--action_1083 (255) = happyShift action_151-action_1083 (39) = happyGoto action_1091-action_1083 (40) = happyGoto action_235-action_1083 _ = happyReduce_68--action_1084 (255) = happyShift action_151-action_1084 (39) = happyGoto action_1090-action_1084 (40) = happyGoto action_235-action_1084 _ = happyReduce_68--action_1085 (343) = happyShift action_1089-action_1085 _ = happyReduce_313--action_1086 (337) = happyShift action_1088-action_1086 _ = happyFail--action_1087 _ = happyReduce_19--action_1088 _ = happyReduce_311--action_1089 (245) = happyShift action_37-action_1089 (253) = happyShift action_40-action_1089 (265) = happyShift action_46-action_1089 (272) = happyShift action_49-action_1089 (273) = happyShift action_50-action_1089 (274) = happyShift action_51-action_1089 (275) = happyShift action_180-action_1089 (276) = happyShift action_181-action_1089 (277) = happyShift action_182-action_1089 (280) = happyShift action_57-action_1089 (281) = happyShift action_58-action_1089 (282) = happyShift action_59-action_1089 (283) = happyShift action_60-action_1089 (286) = happyShift action_62-action_1089 (322) = happyShift action_685-action_1089 (332) = happyShift action_686-action_1089 (336) = happyShift action_687-action_1089 (346) = happyShift action_192-action_1089 (347) = happyShift action_193-action_1089 (351) = happyShift action_194-action_1089 (355) = happyShift action_195-action_1089 (118) = happyGoto action_1085-action_1089 (119) = happyGoto action_680-action_1089 (120) = happyGoto action_681-action_1089 (121) = happyGoto action_682-action_1089 (122) = happyGoto action_1160-action_1089 (205) = happyGoto action_683-action_1089 (206) = happyGoto action_175-action_1089 (215) = happyGoto action_684-action_1089 (217) = happyGoto action_177-action_1089 (227) = happyGoto action_178-action_1089 _ = happyFail--action_1090 (342) = happyShift action_620-action_1090 _ = happyReduce_38--action_1091 (342) = happyShift action_620-action_1091 _ = happyReduce_37--action_1092 _ = happyReduce_78--action_1093 _ = happyReduce_69--action_1094 _ = happyReduce_80--action_1095 (336) = happyShift action_1159-action_1095 _ = happyFail--action_1096 (367) = happyShift action_146-action_1096 (369) = happyShift action_148-action_1096 (370) = happyShift action_149-action_1096 (30) = happyGoto action_1158-action_1096 (31) = happyGoto action_1007-action_1096 (32) = happyGoto action_1008-action_1096 (33) = happyGoto action_1009-action_1096 (237) = happyGoto action_1010-action_1096 (239) = happyGoto action_1011-action_1096 (240) = happyGoto action_1012-action_1096 _ = happyReduce_49--action_1097 (337) = happyShift action_1157-action_1097 _ = happyFail--action_1098 _ = happyReduce_127--action_1099 (268) = happyShift action_882-action_1099 (123) = happyGoto action_1156-action_1099 _ = happyReduce_317--action_1100 (250) = happyShift action_880-action_1100 (134) = happyGoto action_1155-action_1100 _ = happyReduce_337--action_1101 _ = happyReduce_125--action_1102 (245) = happyShift action_37-action_1102 (253) = happyShift action_40-action_1102 (265) = happyShift action_46-action_1102 (270) = happyShift action_465-action_1102 (272) = happyShift action_49-action_1102 (273) = happyShift action_50-action_1102 (274) = happyShift action_51-action_1102 (275) = happyShift action_180-action_1102 (276) = happyShift action_181-action_1102 (277) = happyShift action_182-action_1102 (280) = happyShift action_57-action_1102 (281) = happyShift action_58-action_1102 (282) = happyShift action_59-action_1102 (283) = happyShift action_60-action_1102 (286) = happyShift action_62-action_1102 (299) = happyShift action_183-action_1102 (300) = happyShift action_184-action_1102 (321) = happyShift action_185-action_1102 (328) = happyShift action_186-action_1102 (332) = happyShift action_187-action_1102 (334) = happyShift action_188-action_1102 (336) = happyShift action_189-action_1102 (338) = happyShift action_190-action_1102 (345) = happyShift action_191-action_1102 (346) = happyShift action_192-action_1102 (347) = happyShift action_193-action_1102 (351) = happyShift action_194-action_1102 (355) = happyShift action_195-action_1102 (356) = happyShift action_84-action_1102 (358) = happyShift action_196-action_1102 (359) = happyShift action_197-action_1102 (376) = happyShift action_198-action_1102 (377) = happyShift action_199-action_1102 (379) = happyShift action_102-action_1102 (380) = happyShift action_103-action_1102 (96) = happyGoto action_1154-action_1102 (100) = happyGoto action_164-action_1102 (102) = happyGoto action_460-action_1102 (103) = happyGoto action_461-action_1102 (105) = happyGoto action_462-action_1102 (106) = happyGoto action_463-action_1102 (107) = happyGoto action_169-action_1102 (142) = happyGoto action_170-action_1102 (192) = happyGoto action_464-action_1102 (202) = happyGoto action_172-action_1102 (203) = happyGoto action_173-action_1102 (205) = happyGoto action_174-action_1102 (206) = happyGoto action_175-action_1102 (215) = happyGoto action_176-action_1102 (217) = happyGoto action_177-action_1102 (227) = happyGoto action_178-action_1102 _ = happyFail--action_1103 _ = happyReduce_124--action_1104 (245) = happyShift action_37-action_1104 (253) = happyShift action_40-action_1104 (265) = happyShift action_46-action_1104 (270) = happyShift action_179-action_1104 (272) = happyShift action_49-action_1104 (273) = happyShift action_50-action_1104 (274) = happyShift action_51-action_1104 (275) = happyShift action_180-action_1104 (276) = happyShift action_181-action_1104 (277) = happyShift action_182-action_1104 (280) = happyShift action_57-action_1104 (281) = happyShift action_58-action_1104 (282) = happyShift action_59-action_1104 (283) = happyShift action_60-action_1104 (286) = happyShift action_62-action_1104 (299) = happyShift action_183-action_1104 (300) = happyShift action_184-action_1104 (321) = happyShift action_185-action_1104 (328) = happyShift action_186-action_1104 (332) = happyShift action_187-action_1104 (334) = happyShift action_188-action_1104 (336) = happyShift action_189-action_1104 (338) = happyShift action_190-action_1104 (345) = happyShift action_191-action_1104 (346) = happyShift action_192-action_1104 (347) = happyShift action_193-action_1104 (351) = happyShift action_194-action_1104 (355) = happyShift action_195-action_1104 (356) = happyShift action_84-action_1104 (358) = happyShift action_196-action_1104 (359) = happyShift action_197-action_1104 (376) = happyShift action_198-action_1104 (377) = happyShift action_199-action_1104 (379) = happyShift action_102-action_1104 (380) = happyShift action_103-action_1104 (100) = happyGoto action_164-action_1104 (101) = happyGoto action_1153-action_1104 (103) = happyGoto action_166-action_1104 (104) = happyGoto action_167-action_1104 (106) = happyGoto action_168-action_1104 (107) = happyGoto action_169-action_1104 (142) = happyGoto action_170-action_1104 (192) = happyGoto action_171-action_1104 (202) = happyGoto action_172-action_1104 (203) = happyGoto action_173-action_1104 (205) = happyGoto action_174-action_1104 (206) = happyGoto action_175-action_1104 (215) = happyGoto action_176-action_1104 (217) = happyGoto action_177-action_1104 (227) = happyGoto action_178-action_1104 _ = happyFail--action_1105 _ = happyReduce_143--action_1106 (368) = happyShift action_147-action_1106 (238) = happyGoto action_939-action_1106 (242) = happyGoto action_1152-action_1106 _ = happyReduce_647--action_1107 (327) = happyShift action_1151-action_1107 _ = happyFail--action_1108 (319) = happyShift action_1150-action_1108 _ = happyFail--action_1109 (245) = happyShift action_37-action_1109 (253) = happyShift action_40-action_1109 (265) = happyShift action_46-action_1109 (272) = happyShift action_49-action_1109 (273) = happyShift action_50-action_1109 (274) = happyShift action_51-action_1109 (275) = happyShift action_180-action_1109 (276) = happyShift action_181-action_1109 (277) = happyShift action_182-action_1109 (280) = happyShift action_57-action_1109 (281) = happyShift action_58-action_1109 (282) = happyShift action_59-action_1109 (283) = happyShift action_60-action_1109 (286) = happyShift action_62-action_1109 (299) = happyShift action_183-action_1109 (300) = happyShift action_184-action_1109 (308) = happyShift action_212-action_1109 (317) = happyShift action_1148-action_1109 (319) = happyReduce_240-action_1109 (321) = happyShift action_185-action_1109 (328) = happyShift action_186-action_1109 (332) = happyShift action_187-action_1109 (334) = happyShift action_188-action_1109 (336) = happyShift action_189-action_1109 (338) = happyShift action_190-action_1109 (344) = happyShift action_1149-action_1109 (345) = happyShift action_191-action_1109 (346) = happyShift action_192-action_1109 (347) = happyShift action_193-action_1109 (349) = happyShift action_222-action_1109 (351) = happyShift action_194-action_1109 (355) = happyShift action_195-action_1109 (358) = happyShift action_196-action_1109 (359) = happyShift action_197-action_1109 (376) = happyShift action_198-action_1109 (377) = happyShift action_199-action_1109 (379) = happyShift action_102-action_1109 (380) = happyShift action_103-action_1109 (100) = happyGoto action_164-action_1109 (107) = happyGoto action_289-action_1109 (142) = happyGoto action_170-action_1109 (199) = happyGoto action_1147-action_1109 (202) = happyGoto action_172-action_1109 (203) = happyGoto action_173-action_1109 (205) = happyGoto action_174-action_1109 (206) = happyGoto action_175-action_1109 (215) = happyGoto action_176-action_1109 (217) = happyGoto action_177-action_1109 (227) = happyGoto action_178-action_1109 (232) = happyGoto action_457-action_1109 _ = happyReduce_330--action_1110 (368) = happyShift action_147-action_1110 (238) = happyGoto action_939-action_1110 (242) = happyGoto action_1146-action_1110 _ = happyReduce_647--action_1111 _ = happyReduce_315--action_1112 (337) = happyReduce_625-action_1112 _ = happyReduce_625--action_1113 (329) = happyReduce_332-action_1113 (367) = happyShift action_146-action_1113 (131) = happyGoto action_1145-action_1113 (132) = happyGoto action_278-action_1113 (133) = happyGoto action_279-action_1113 (237) = happyGoto action_280-action_1113 (243) = happyGoto action_281-action_1113 _ = happyReduce_649--action_1114 (245) = happyShift action_37-action_1114 (253) = happyShift action_40-action_1114 (265) = happyShift action_46-action_1114 (270) = happyShift action_179-action_1114 (272) = happyShift action_49-action_1114 (273) = happyShift action_50-action_1114 (274) = happyShift action_51-action_1114 (275) = happyShift action_180-action_1114 (276) = happyShift action_181-action_1114 (277) = happyShift action_182-action_1114 (280) = happyShift action_57-action_1114 (281) = happyShift action_58-action_1114 (282) = happyShift action_59-action_1114 (283) = happyShift action_60-action_1114 (286) = happyShift action_62-action_1114 (299) = happyShift action_183-action_1114 (300) = happyShift action_184-action_1114 (321) = happyShift action_185-action_1114 (328) = happyShift action_186-action_1114 (332) = happyShift action_187-action_1114 (334) = happyShift action_188-action_1114 (336) = happyShift action_189-action_1114 (338) = happyShift action_190-action_1114 (345) = happyShift action_191-action_1114 (346) = happyShift action_192-action_1114 (347) = happyShift action_193-action_1114 (351) = happyShift action_194-action_1114 (355) = happyShift action_195-action_1114 (356) = happyShift action_84-action_1114 (358) = happyShift action_196-action_1114 (359) = happyShift action_197-action_1114 (376) = happyShift action_198-action_1114 (377) = happyShift action_199-action_1114 (379) = happyShift action_102-action_1114 (380) = happyShift action_103-action_1114 (95) = happyGoto action_1144-action_1114 (100) = happyGoto action_164-action_1114 (101) = happyGoto action_350-action_1114 (103) = happyGoto action_166-action_1114 (104) = happyGoto action_167-action_1114 (106) = happyGoto action_168-action_1114 (107) = happyGoto action_169-action_1114 (142) = happyGoto action_170-action_1114 (192) = happyGoto action_171-action_1114 (202) = happyGoto action_172-action_1114 (203) = happyGoto action_173-action_1114 (205) = happyGoto action_174-action_1114 (206) = happyGoto action_175-action_1114 (215) = happyGoto action_176-action_1114 (217) = happyGoto action_177-action_1114 (227) = happyGoto action_178-action_1114 _ = happyFail--action_1115 (332) = happyShift action_217-action_1115 (336) = happyShift action_1143-action_1115 (338) = happyShift action_219-action_1115 (347) = happyShift action_79-action_1115 (196) = happyGoto action_1059-action_1115 (197) = happyGoto action_1142-action_1115 (198) = happyGoto action_325-action_1115 (230) = happyGoto action_328-action_1115 _ = happyFail--action_1116 (332) = happyShift action_217-action_1116 (336) = happyShift action_1062-action_1116 (338) = happyShift action_219-action_1116 (347) = happyShift action_1063-action_1116 (351) = happyShift action_194-action_1116 (355) = happyShift action_195-action_1116 (124) = happyGoto action_1141-action_1116 (125) = happyGoto action_1058-action_1116 (196) = happyGoto action_1059-action_1116 (197) = happyGoto action_1060-action_1116 (198) = happyGoto action_325-action_1116 (203) = happyGoto action_1061-action_1116 (205) = happyGoto action_174-action_1116 (206) = happyGoto action_175-action_1116 (230) = happyGoto action_328-action_1116 _ = happyReduce_320--action_1117 _ = happyReduce_316--action_1118 _ = happyReduce_340--action_1119 (245) = happyShift action_37-action_1119 (253) = happyShift action_40-action_1119 (265) = happyShift action_46-action_1119 (270) = happyShift action_179-action_1119 (272) = happyShift action_49-action_1119 (273) = happyShift action_50-action_1119 (274) = happyShift action_51-action_1119 (275) = happyShift action_180-action_1119 (276) = happyShift action_181-action_1119 (277) = happyShift action_182-action_1119 (280) = happyShift action_57-action_1119 (281) = happyShift action_58-action_1119 (282) = happyShift action_59-action_1119 (283) = happyShift action_60-action_1119 (286) = happyShift action_62-action_1119 (299) = happyShift action_183-action_1119 (300) = happyShift action_184-action_1119 (321) = happyShift action_185-action_1119 (328) = happyShift action_186-action_1119 (332) = happyShift action_187-action_1119 (334) = happyShift action_188-action_1119 (336) = happyShift action_189-action_1119 (338) = happyShift action_190-action_1119 (345) = happyShift action_191-action_1119 (346) = happyShift action_192-action_1119 (347) = happyShift action_193-action_1119 (351) = happyShift action_194-action_1119 (355) = happyShift action_195-action_1119 (356) = happyShift action_84-action_1119 (358) = happyShift action_196-action_1119 (359) = happyShift action_197-action_1119 (376) = happyShift action_198-action_1119 (377) = happyShift action_199-action_1119 (379) = happyShift action_102-action_1119 (380) = happyShift action_103-action_1119 (95) = happyGoto action_349-action_1119 (100) = happyGoto action_164-action_1119 (101) = happyGoto action_350-action_1119 (103) = happyGoto action_166-action_1119 (104) = happyGoto action_167-action_1119 (106) = happyGoto action_168-action_1119 (107) = happyGoto action_169-action_1119 (108) = happyGoto action_1054-action_1119 (109) = happyGoto action_1140-action_1119 (142) = happyGoto action_170-action_1119 (192) = happyGoto action_171-action_1119 (202) = happyGoto action_172-action_1119 (203) = happyGoto action_173-action_1119 (205) = happyGoto action_174-action_1119 (206) = happyGoto action_175-action_1119 (215) = happyGoto action_176-action_1119 (217) = happyGoto action_177-action_1119 (227) = happyGoto action_178-action_1119 _ = happyFail--action_1120 _ = happyReduce_43--action_1121 _ = happyReduce_62--action_1122 _ = happyReduce_54--action_1123 _ = happyReduce_53--action_1124 (245) = happyShift action_37-action_1124 (253) = happyShift action_40-action_1124 (265) = happyShift action_46-action_1124 (267) = happyShift action_1051-action_1124 (270) = happyShift action_48-action_1124 (272) = happyShift action_49-action_1124 (273) = happyShift action_50-action_1124 (274) = happyShift action_51-action_1124 (275) = happyShift action_52-action_1124 (276) = happyShift action_53-action_1124 (277) = happyShift action_54-action_1124 (279) = happyShift action_56-action_1124 (280) = happyShift action_57-action_1124 (281) = happyShift action_58-action_1124 (282) = happyShift action_59-action_1124 (283) = happyShift action_60-action_1124 (286) = happyShift action_62-action_1124 (307) = happyShift action_1138-action_1124 (332) = happyShift action_217-action_1124 (336) = happyShift action_402-action_1124 (337) = happyShift action_1139-action_1124 (338) = happyShift action_219-action_1124 (346) = happyShift action_78-action_1124 (347) = happyShift action_79-action_1124 (350) = happyShift action_80-action_1124 (351) = happyShift action_81-action_1124 (354) = happyShift action_82-action_1124 (355) = happyShift action_83-action_1124 (36) = happyGoto action_1136-action_1124 (37) = happyGoto action_1137-action_1124 (38) = happyGoto action_1049-action_1124 (195) = happyGoto action_26-action_1124 (198) = happyGoto action_27-action_1124 (219) = happyGoto action_404-action_1124 (220) = happyGoto action_30-action_1124 (221) = happyGoto action_106-action_1124 (227) = happyGoto action_32-action_1124 (229) = happyGoto action_33-action_1124 (230) = happyGoto action_34-action_1124 _ = happyFail--action_1125 (343) = happyShift action_1135-action_1125 _ = happyReduce_46--action_1126 (1) = happyShift action_664-action_1126 (331) = happyShift action_665-action_1126 (234) = happyGoto action_1134-action_1126 _ = happyFail--action_1127 (329) = happyShift action_1133-action_1127 _ = happyFail--action_1128 (244) = happyShift action_36-action_1128 (245) = happyShift action_37-action_1128 (246) = happyShift action_38-action_1128 (251) = happyShift action_39-action_1128 (253) = happyShift action_40-action_1128 (254) = happyShift action_41-action_1128 (261) = happyShift action_45-action_1128 (265) = happyShift action_46-action_1128 (269) = happyShift action_47-action_1128 (270) = happyShift action_48-action_1128 (272) = happyShift action_49-action_1128 (273) = happyShift action_50-action_1128 (274) = happyShift action_51-action_1128 (275) = happyShift action_52-action_1128 (276) = happyShift action_53-action_1128 (277) = happyShift action_54-action_1128 (278) = happyShift action_55-action_1128 (279) = happyShift action_56-action_1128 (280) = happyShift action_57-action_1128 (281) = happyShift action_58-action_1128 (282) = happyShift action_59-action_1128 (283) = happyShift action_60-action_1128 (284) = happyShift action_61-action_1128 (286) = happyShift action_62-action_1128 (294) = happyShift action_66-action_1128 (295) = happyShift action_67-action_1128 (296) = happyShift action_68-action_1128 (311) = happyShift action_69-action_1128 (317) = happyShift action_70-action_1128 (320) = happyShift action_71-action_1128 (332) = happyShift action_72-action_1128 (334) = happyShift action_73-action_1128 (336) = happyShift action_107-action_1128 (338) = happyShift action_75-action_1128 (340) = happyShift action_76-action_1128 (345) = happyShift action_77-action_1128 (346) = happyShift action_78-action_1128 (347) = happyShift action_79-action_1128 (350) = happyShift action_80-action_1128 (351) = happyShift action_81-action_1128 (354) = happyShift action_82-action_1128 (355) = happyShift action_83-action_1128 (356) = happyShift action_84-action_1128 (357) = happyShift action_85-action_1128 (358) = happyShift action_86-action_1128 (359) = happyShift action_87-action_1128 (360) = happyShift action_88-action_1128 (361) = happyShift action_89-action_1128 (362) = happyShift action_90-action_1128 (363) = happyShift action_91-action_1128 (364) = happyShift action_92-action_1128 (365) = happyShift action_93-action_1128 (366) = happyShift action_94-action_1128 (371) = happyShift action_95-action_1128 (372) = happyShift action_96-action_1128 (373) = happyShift action_97-action_1128 (374) = happyShift action_98-action_1128 (376) = happyShift action_99-action_1128 (377) = happyShift action_100-action_1128 (378) = happyShift action_101-action_1128 (379) = happyShift action_102-action_1128 (380) = happyShift action_103-action_1128 (38) = happyGoto action_13-action_1128 (142) = happyGoto action_16-action_1128 (143) = happyGoto action_1132-action_1128 (144) = happyGoto action_105-action_1128 (145) = happyGoto action_18-action_1128 (147) = happyGoto action_19-action_1128 (148) = happyGoto action_20-action_1128 (149) = happyGoto action_21-action_1128 (150) = happyGoto action_22-action_1128 (151) = happyGoto action_23-action_1128 (152) = happyGoto action_24-action_1128 (192) = happyGoto action_25-action_1128 (195) = happyGoto action_26-action_1128 (198) = happyGoto action_27-action_1128 (219) = happyGoto action_29-action_1128 (220) = happyGoto action_30-action_1128 (221) = happyGoto action_106-action_1128 (227) = happyGoto action_32-action_1128 (229) = happyGoto action_33-action_1128 (230) = happyGoto action_34-action_1128 (233) = happyGoto action_35-action_1128 _ = happyFail--action_1129 (359) = happyShift action_1131-action_1129 _ = happyFail--action_1130 _ = happyReduce_375--action_1131 (306) = happyShift action_1174-action_1131 _ = happyFail--action_1132 _ = happyReduce_459--action_1133 _ = happyReduce_27--action_1134 _ = happyReduce_28--action_1135 (367) = happyShift action_146-action_1135 (369) = happyShift action_148-action_1135 (370) = happyShift action_149-action_1135 (30) = happyGoto action_1173-action_1135 (31) = happyGoto action_1007-action_1135 (32) = happyGoto action_1008-action_1135 (33) = happyGoto action_1009-action_1135 (237) = happyGoto action_1010-action_1135 (239) = happyGoto action_1011-action_1135 (240) = happyGoto action_1012-action_1135 _ = happyReduce_49--action_1136 (337) = happyShift action_1171-action_1136 (343) = happyShift action_1172-action_1136 _ = happyFail--action_1137 _ = happyReduce_60--action_1138 (337) = happyShift action_1170-action_1138 _ = happyFail--action_1139 _ = happyReduce_57--action_1140 _ = happyReduce_285--action_1141 _ = happyReduce_318--action_1142 _ = happyReduce_526--action_1143 (308) = happyShift action_212-action_1143 (337) = happyShift action_250-action_1143 (343) = happyShift action_244-action_1143 (349) = happyShift action_222-action_1143 (232) = happyGoto action_592-action_1143 (236) = happyGoto action_248-action_1143 _ = happyFail--action_1144 _ = happyReduce_321--action_1145 (329) = happyShift action_1169-action_1145 _ = happyFail--action_1146 _ = happyReduce_327--action_1147 (245) = happyShift action_37-action_1147 (253) = happyShift action_40-action_1147 (265) = happyShift action_46-action_1147 (272) = happyShift action_49-action_1147 (273) = happyShift action_50-action_1147 (274) = happyShift action_51-action_1147 (275) = happyShift action_180-action_1147 (276) = happyShift action_181-action_1147 (277) = happyShift action_182-action_1147 (280) = happyShift action_57-action_1147 (281) = happyShift action_58-action_1147 (282) = happyShift action_59-action_1147 (283) = happyShift action_60-action_1147 (286) = happyShift action_62-action_1147 (299) = happyShift action_183-action_1147 (300) = happyShift action_184-action_1147 (321) = happyShift action_185-action_1147 (328) = happyShift action_186-action_1147 (332) = happyShift action_187-action_1147 (334) = happyShift action_188-action_1147 (336) = happyShift action_189-action_1147 (338) = happyShift action_190-action_1147 (345) = happyShift action_191-action_1147 (346) = happyShift action_192-action_1147 (347) = happyShift action_193-action_1147 (351) = happyShift action_194-action_1147 (355) = happyShift action_195-action_1147 (358) = happyShift action_196-action_1147 (359) = happyShift action_197-action_1147 (376) = happyShift action_198-action_1147 (377) = happyShift action_199-action_1147 (379) = happyShift action_102-action_1147 (380) = happyShift action_103-action_1147 (100) = happyGoto action_164-action_1147 (106) = happyGoto action_1168-action_1147 (107) = happyGoto action_169-action_1147 (142) = happyGoto action_170-action_1147 (202) = happyGoto action_172-action_1147 (203) = happyGoto action_173-action_1147 (205) = happyGoto action_174-action_1147 (206) = happyGoto action_175-action_1147 (215) = happyGoto action_176-action_1147 (217) = happyGoto action_177-action_1147 (227) = happyGoto action_178-action_1147 _ = happyFail--action_1148 (245) = happyShift action_37-action_1148 (253) = happyShift action_40-action_1148 (265) = happyShift action_46-action_1148 (272) = happyShift action_49-action_1148 (273) = happyShift action_50-action_1148 (274) = happyShift action_51-action_1148 (275) = happyShift action_180-action_1148 (276) = happyShift action_181-action_1148 (277) = happyShift action_182-action_1148 (280) = happyShift action_57-action_1148 (281) = happyShift action_58-action_1148 (282) = happyShift action_59-action_1148 (283) = happyShift action_60-action_1148 (286) = happyShift action_62-action_1148 (299) = happyShift action_183-action_1148 (300) = happyShift action_184-action_1148 (321) = happyShift action_185-action_1148 (328) = happyShift action_186-action_1148 (332) = happyShift action_187-action_1148 (334) = happyShift action_188-action_1148 (336) = happyShift action_189-action_1148 (338) = happyShift action_190-action_1148 (345) = happyShift action_191-action_1148 (346) = happyShift action_192-action_1148 (347) = happyShift action_193-action_1148 (351) = happyShift action_194-action_1148 (355) = happyShift action_195-action_1148 (358) = happyShift action_196-action_1148 (359) = happyShift action_197-action_1148 (376) = happyShift action_198-action_1148 (377) = happyShift action_199-action_1148 (379) = happyShift action_102-action_1148 (380) = happyShift action_103-action_1148 (100) = happyGoto action_164-action_1148 (106) = happyGoto action_1167-action_1148 (107) = happyGoto action_169-action_1148 (142) = happyGoto action_170-action_1148 (202) = happyGoto action_172-action_1148 (203) = happyGoto action_173-action_1148 (205) = happyGoto action_174-action_1148 (206) = happyGoto action_175-action_1148 (215) = happyGoto action_176-action_1148 (217) = happyGoto action_177-action_1148 (227) = happyGoto action_178-action_1148 _ = happyFail--action_1149 (347) = happyShift action_79-action_1149 (230) = happyGoto action_838-action_1149 _ = happyFail--action_1150 (245) = happyShift action_37-action_1150 (253) = happyShift action_40-action_1150 (265) = happyShift action_46-action_1150 (272) = happyShift action_49-action_1150 (273) = happyShift action_50-action_1150 (274) = happyShift action_51-action_1150 (275) = happyShift action_180-action_1150 (276) = happyShift action_181-action_1150 (277) = happyShift action_182-action_1150 (280) = happyShift action_57-action_1150 (281) = happyShift action_58-action_1150 (282) = happyShift action_59-action_1150 (283) = happyShift action_60-action_1150 (286) = happyShift action_62-action_1150 (299) = happyShift action_183-action_1150 (300) = happyShift action_184-action_1150 (321) = happyShift action_185-action_1150 (328) = happyShift action_186-action_1150 (332) = happyShift action_187-action_1150 (334) = happyShift action_188-action_1150 (336) = happyShift action_189-action_1150 (338) = happyShift action_190-action_1150 (345) = happyShift action_191-action_1150 (346) = happyShift action_192-action_1150 (347) = happyShift action_193-action_1150 (351) = happyShift action_194-action_1150 (355) = happyShift action_195-action_1150 (358) = happyShift action_196-action_1150 (359) = happyShift action_197-action_1150 (376) = happyShift action_198-action_1150 (377) = happyShift action_199-action_1150 (379) = happyShift action_102-action_1150 (380) = happyShift action_103-action_1150 (100) = happyGoto action_164-action_1150 (106) = happyGoto action_1165-action_1150 (107) = happyGoto action_169-action_1150 (130) = happyGoto action_1166-action_1150 (142) = happyGoto action_170-action_1150 (202) = happyGoto action_172-action_1150 (203) = happyGoto action_173-action_1150 (205) = happyGoto action_174-action_1150 (206) = happyGoto action_175-action_1150 (215) = happyGoto action_176-action_1150 (217) = happyGoto action_177-action_1150 (227) = happyGoto action_178-action_1150 _ = happyFail--action_1151 _ = happyReduce_328--action_1152 (367) = happyShift action_146-action_1152 (128) = happyGoto action_1164-action_1152 (237) = happyGoto action_280-action_1152 (243) = happyGoto action_1000-action_1152 _ = happyReduce_649--action_1153 _ = happyReduce_126--action_1154 _ = happyReduce_142--action_1155 _ = happyReduce_128--action_1156 (250) = happyShift action_880-action_1156 (134) = happyGoto action_1163-action_1156 _ = happyReduce_337--action_1157 _ = happyReduce_186--action_1158 (337) = happyShift action_1162-action_1158 _ = happyFail--action_1159 (367) = happyShift action_146-action_1159 (369) = happyShift action_148-action_1159 (370) = happyShift action_149-action_1159 (30) = happyGoto action_1161-action_1159 (31) = happyGoto action_1007-action_1159 (32) = happyGoto action_1008-action_1159 (33) = happyGoto action_1009-action_1159 (237) = happyGoto action_1010-action_1159 (239) = happyGoto action_1011-action_1159 (240) = happyGoto action_1012-action_1159 _ = happyReduce_49--action_1160 _ = happyReduce_314--action_1161 (337) = happyShift action_1178-action_1161 _ = happyFail--action_1162 _ = happyReduce_82--action_1163 _ = happyReduce_129--action_1164 _ = happyReduce_324--action_1165 (245) = happyShift action_37-action_1165 (253) = happyShift action_40-action_1165 (265) = happyShift action_46-action_1165 (272) = happyShift action_49-action_1165 (273) = happyShift action_50-action_1165 (274) = happyShift action_51-action_1165 (275) = happyShift action_180-action_1165 (276) = happyShift action_181-action_1165 (277) = happyShift action_182-action_1165 (280) = happyShift action_57-action_1165 (281) = happyShift action_58-action_1165 (282) = happyShift action_59-action_1165 (283) = happyShift action_60-action_1165 (286) = happyShift action_62-action_1165 (299) = happyShift action_183-action_1165 (300) = happyShift action_184-action_1165 (308) = happyShift action_212-action_1165 (321) = happyShift action_185-action_1165 (328) = happyShift action_186-action_1165 (332) = happyShift action_187-action_1165 (334) = happyShift action_188-action_1165 (336) = happyShift action_189-action_1165 (338) = happyShift action_190-action_1165 (344) = happyShift action_1149-action_1165 (345) = happyShift action_191-action_1165 (346) = happyShift action_192-action_1165 (347) = happyShift action_193-action_1165 (349) = happyShift action_222-action_1165 (351) = happyShift action_194-action_1165 (355) = happyShift action_195-action_1165 (358) = happyShift action_196-action_1165 (359) = happyShift action_197-action_1165 (376) = happyShift action_198-action_1165 (377) = happyShift action_199-action_1165 (379) = happyShift action_102-action_1165 (380) = happyShift action_103-action_1165 (100) = happyGoto action_164-action_1165 (107) = happyGoto action_289-action_1165 (142) = happyGoto action_170-action_1165 (199) = happyGoto action_1147-action_1165 (202) = happyGoto action_172-action_1165 (203) = happyGoto action_173-action_1165 (205) = happyGoto action_174-action_1165 (206) = happyGoto action_175-action_1165 (215) = happyGoto action_176-action_1165 (217) = happyGoto action_177-action_1165 (227) = happyGoto action_178-action_1165 (232) = happyGoto action_457-action_1165 _ = happyReduce_330--action_1166 (368) = happyShift action_147-action_1166 (238) = happyGoto action_939-action_1166 (242) = happyGoto action_1177-action_1166 _ = happyReduce_647--action_1167 (245) = happyShift action_37-action_1167 (253) = happyShift action_40-action_1167 (265) = happyShift action_46-action_1167 (272) = happyShift action_49-action_1167 (273) = happyShift action_50-action_1167 (274) = happyShift action_51-action_1167 (275) = happyShift action_180-action_1167 (276) = happyShift action_181-action_1167 (277) = happyShift action_182-action_1167 (280) = happyShift action_57-action_1167 (281) = happyShift action_58-action_1167 (282) = happyShift action_59-action_1167 (283) = happyShift action_60-action_1167 (286) = happyShift action_62-action_1167 (299) = happyShift action_183-action_1167 (300) = happyShift action_184-action_1167 (321) = happyShift action_185-action_1167 (328) = happyShift action_186-action_1167 (332) = happyShift action_187-action_1167 (334) = happyShift action_188-action_1167 (336) = happyShift action_189-action_1167 (338) = happyShift action_190-action_1167 (345) = happyShift action_191-action_1167 (346) = happyShift action_192-action_1167 (347) = happyShift action_193-action_1167 (351) = happyShift action_194-action_1167 (355) = happyShift action_195-action_1167 (358) = happyShift action_196-action_1167 (359) = happyShift action_197-action_1167 (376) = happyShift action_198-action_1167 (377) = happyShift action_199-action_1167 (379) = happyShift action_102-action_1167 (380) = happyShift action_103-action_1167 (100) = happyGoto action_164-action_1167 (107) = happyGoto action_289-action_1167 (142) = happyGoto action_170-action_1167 (202) = happyGoto action_172-action_1167 (203) = happyGoto action_173-action_1167 (205) = happyGoto action_174-action_1167 (206) = happyGoto action_175-action_1167 (215) = happyGoto action_176-action_1167 (217) = happyGoto action_177-action_1167 (227) = happyGoto action_178-action_1167 _ = happyReduce_239--action_1168 (245) = happyShift action_37-action_1168 (253) = happyShift action_40-action_1168 (265) = happyShift action_46-action_1168 (272) = happyShift action_49-action_1168 (273) = happyShift action_50-action_1168 (274) = happyShift action_51-action_1168 (275) = happyShift action_180-action_1168 (276) = happyShift action_181-action_1168 (277) = happyShift action_182-action_1168 (280) = happyShift action_57-action_1168 (281) = happyShift action_58-action_1168 (282) = happyShift action_59-action_1168 (283) = happyShift action_60-action_1168 (286) = happyShift action_62-action_1168 (299) = happyShift action_183-action_1168 (300) = happyShift action_184-action_1168 (321) = happyShift action_185-action_1168 (328) = happyShift action_186-action_1168 (332) = happyShift action_187-action_1168 (334) = happyShift action_188-action_1168 (336) = happyShift action_189-action_1168 (338) = happyShift action_190-action_1168 (345) = happyShift action_191-action_1168 (346) = happyShift action_192-action_1168 (347) = happyShift action_193-action_1168 (351) = happyShift action_194-action_1168 (355) = happyShift action_195-action_1168 (358) = happyShift action_196-action_1168 (359) = happyShift action_197-action_1168 (376) = happyShift action_198-action_1168 (377) = happyShift action_199-action_1168 (379) = happyShift action_102-action_1168 (380) = happyShift action_103-action_1168 (100) = happyGoto action_164-action_1168 (107) = happyGoto action_289-action_1168 (142) = happyGoto action_170-action_1168 (202) = happyGoto action_172-action_1168 (203) = happyGoto action_173-action_1168 (205) = happyGoto action_174-action_1168 (206) = happyGoto action_175-action_1168 (215) = happyGoto action_176-action_1168 (217) = happyGoto action_177-action_1168 (227) = happyGoto action_178-action_1168 _ = happyReduce_331--action_1169 (309) = happyShift action_1176-action_1169 _ = happyFail--action_1170 _ = happyReduce_56--action_1171 _ = happyReduce_58--action_1172 (245) = happyShift action_37-action_1172 (253) = happyShift action_40-action_1172 (265) = happyShift action_46-action_1172 (267) = happyShift action_1051-action_1172 (270) = happyShift action_48-action_1172 (272) = happyShift action_49-action_1172 (273) = happyShift action_50-action_1172 (274) = happyShift action_51-action_1172 (275) = happyShift action_52-action_1172 (276) = happyShift action_53-action_1172 (277) = happyShift action_54-action_1172 (279) = happyShift action_56-action_1172 (280) = happyShift action_57-action_1172 (281) = happyShift action_58-action_1172 (282) = happyShift action_59-action_1172 (283) = happyShift action_60-action_1172 (286) = happyShift action_62-action_1172 (332) = happyShift action_217-action_1172 (336) = happyShift action_402-action_1172 (338) = happyShift action_219-action_1172 (346) = happyShift action_78-action_1172 (347) = happyShift action_79-action_1172 (350) = happyShift action_80-action_1172 (351) = happyShift action_81-action_1172 (354) = happyShift action_82-action_1172 (355) = happyShift action_83-action_1172 (37) = happyGoto action_1175-action_1172 (38) = happyGoto action_1049-action_1172 (195) = happyGoto action_26-action_1172 (198) = happyGoto action_27-action_1172 (219) = happyGoto action_404-action_1172 (220) = happyGoto action_30-action_1172 (221) = happyGoto action_106-action_1172 (227) = happyGoto action_32-action_1172 (229) = happyGoto action_33-action_1172 (230) = happyGoto action_34-action_1172 _ = happyFail--action_1173 _ = happyReduce_45--action_1174 _ = happyReduce_391--action_1175 _ = happyReduce_59--action_1176 (245) = happyShift action_37-action_1176 (253) = happyShift action_40-action_1176 (265) = happyShift action_46-action_1176 (270) = happyShift action_179-action_1176 (272) = happyShift action_49-action_1176 (273) = happyShift action_50-action_1176 (274) = happyShift action_51-action_1176 (275) = happyShift action_180-action_1176 (276) = happyShift action_181-action_1176 (277) = happyShift action_182-action_1176 (280) = happyShift action_57-action_1176 (281) = happyShift action_58-action_1176 (282) = happyShift action_59-action_1176 (283) = happyShift action_60-action_1176 (286) = happyShift action_62-action_1176 (299) = happyShift action_183-action_1176 (300) = happyShift action_184-action_1176 (321) = happyShift action_185-action_1176 (328) = happyShift action_186-action_1176 (332) = happyShift action_187-action_1176 (334) = happyShift action_188-action_1176 (336) = happyShift action_189-action_1176 (338) = happyShift action_190-action_1176 (345) = happyShift action_191-action_1176 (346) = happyShift action_192-action_1176 (347) = happyShift action_193-action_1176 (351) = happyShift action_194-action_1176 (355) = happyShift action_195-action_1176 (356) = happyShift action_84-action_1176 (358) = happyShift action_196-action_1176 (359) = happyShift action_197-action_1176 (376) = happyShift action_198-action_1176 (377) = happyShift action_199-action_1176 (379) = happyShift action_102-action_1176 (380) = happyShift action_103-action_1176 (95) = happyGoto action_1179-action_1176 (100) = happyGoto action_164-action_1176 (101) = happyGoto action_350-action_1176 (103) = happyGoto action_166-action_1176 (104) = happyGoto action_167-action_1176 (106) = happyGoto action_168-action_1176 (107) = happyGoto action_169-action_1176 (142) = happyGoto action_170-action_1176 (192) = happyGoto action_171-action_1176 (202) = happyGoto action_172-action_1176 (203) = happyGoto action_173-action_1176 (205) = happyGoto action_174-action_1176 (206) = happyGoto action_175-action_1176 (215) = happyGoto action_176-action_1176 (217) = happyGoto action_177-action_1176 (227) = happyGoto action_178-action_1176 _ = happyFail--action_1177 _ = happyReduce_326--action_1178 _ = happyReduce_83--action_1179 _ = happyReduce_322--happyReduce_12 = happySpecReduce_1  15 happyReduction_12-happyReduction_12 (HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn15-		 (head (fromOL (unLoc happy_var_1))-	)-happyReduction_12 _  = notHappyAtAll --happyReduce_13 = happyMonadReduce 7 16 happyReduction_13-happyReduction_13 ((HappyAbsSyn22  happy_var_7) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn29  happy_var_5) `HappyStk`-	(HappyAbsSyn21  happy_var_4) `HappyStk`-	(HappyAbsSyn235  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn19  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule (Just happy_var_3) happy_var_5 (fst happy_var_7) (snd happy_var_7) happy_var_4 happy_var_1-                          ) ))-	) (\r -> happyReturn (HappyAbsSyn16 r))--happyReduce_14 = happySpecReduce_1  17 happyReduction_14-happyReduction_14 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_14 _  = notHappyAtAll --happyReduce_15 = happySpecReduce_1  17 happyReduction_15-happyReduction_15 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_15 _  = notHappyAtAll --happyReduce_16 = happySpecReduce_1  17 happyReduction_16-happyReduction_16 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_16 _  = notHappyAtAll --happyReduce_17 = happySpecReduce_1  17 happyReduction_17-happyReduction_17 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_17 _  = notHappyAtAll --happyReduce_18 = happySpecReduce_3  17 happyReduction_18-happyReduction_18 (HappyTerminal happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) $ getRdrName funTyCon-	)-happyReduction_18 _ _ _  = notHappyAtAll --happyReduce_19 = happyMonadReduce 7 18 happyReduction_19-happyReduction_19 ((HappyAbsSyn22  happy_var_7) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn29  happy_var_5) `HappyStk`-	(HappyAbsSyn21  happy_var_4) `HappyStk`-	(HappyAbsSyn235  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn19  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule (Just happy_var_3) happy_var_5 (fst happy_var_7) (snd happy_var_7) happy_var_4 happy_var_1-                          ) ))-	) (\r -> happyReturn (HappyAbsSyn16 r))--happyReduce_20 = happyMonadReduce 1 18 happyReduction_20-happyReduction_20 ((HappyAbsSyn22  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule Nothing Nothing-                          (fst happy_var_1) (snd happy_var_1) Nothing Nothing-                          )))-	) (\r -> happyReturn (HappyAbsSyn16 r))--happyReduce_21 = happySpecReduce_1  19 happyReduction_21-happyReduction_21 (HappyAbsSyn19  happy_var_1)-	 =  HappyAbsSyn19-		 (happy_var_1-	)-happyReduction_21 _  = notHappyAtAll --happyReduce_22 = happySpecReduce_0  19 happyReduction_22-happyReduction_22  =  HappyAbsSyn19-		 (Nothing-	)--happyReduce_23 = happyMonadReduce 0 20 happyReduction_23-happyReduction_23 (happyRest) tk-	 = happyThen (( pushCurrentContext)-	) (\r -> happyReturn (HappyAbsSyn20 r))--happyReduce_24 = happySpecReduce_3  21 happyReduction_24-happyReduction_24 _-	(HappyAbsSyn86  happy_var_2)-	_-	 =  HappyAbsSyn21-		 (Just (DeprecatedTxt $ unLoc happy_var_2)-	)-happyReduction_24 _ _ _  = notHappyAtAll --happyReduce_25 = happySpecReduce_3  21 happyReduction_25-happyReduction_25 _-	(HappyAbsSyn86  happy_var_2)-	_-	 =  HappyAbsSyn21-		 (Just (WarningTxt $ unLoc happy_var_2)-	)-happyReduction_25 _ _ _  = notHappyAtAll --happyReduce_26 = happySpecReduce_0  21 happyReduction_26-happyReduction_26  =  HappyAbsSyn21-		 (Nothing-	)--happyReduce_27 = happySpecReduce_3  22 happyReduction_27-happyReduction_27 _-	(HappyAbsSyn22  happy_var_2)-	_-	 =  HappyAbsSyn22-		 (happy_var_2-	)-happyReduction_27 _ _ _  = notHappyAtAll --happyReduce_28 = happySpecReduce_3  22 happyReduction_28-happyReduction_28 _-	(HappyAbsSyn22  happy_var_2)-	_-	 =  HappyAbsSyn22-		 (happy_var_2-	)-happyReduction_28 _ _ _  = notHappyAtAll --happyReduce_29 = happySpecReduce_3  23 happyReduction_29-happyReduction_29 _-	(HappyAbsSyn22  happy_var_2)-	_-	 =  HappyAbsSyn22-		 (happy_var_2-	)-happyReduction_29 _ _ _  = notHappyAtAll --happyReduce_30 = happySpecReduce_3  23 happyReduction_30-happyReduction_30 _-	(HappyAbsSyn22  happy_var_2)-	_-	 =  HappyAbsSyn22-		 (happy_var_2-	)-happyReduction_30 _ _ _  = notHappyAtAll --happyReduce_31 = happySpecReduce_1  24 happyReduction_31-happyReduction_31 (HappyAbsSyn27  happy_var_1)-	 =  HappyAbsSyn22-		 ((reverse happy_var_1,[])-	)-happyReduction_31 _  = notHappyAtAll --happyReduce_32 = happySpecReduce_3  24 happyReduction_32-happyReduction_32 (HappyAbsSyn25  happy_var_3)-	_-	(HappyAbsSyn27  happy_var_1)-	 =  HappyAbsSyn22-		 ((reverse happy_var_1,happy_var_3)-	)-happyReduction_32 _ _ _  = notHappyAtAll --happyReduce_33 = happySpecReduce_1  24 happyReduction_33-happyReduction_33 (HappyAbsSyn25  happy_var_1)-	 =  HappyAbsSyn22-		 (([],happy_var_1)-	)-happyReduction_33 _  = notHappyAtAll --happyReduce_34 = happySpecReduce_1  25 happyReduction_34-happyReduction_34 (HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn25-		 (cvTopDecls happy_var_1-	)-happyReduction_34 _  = notHappyAtAll --happyReduce_35 = happyMonadReduce 7 26 happyReduction_35-happyReduction_35 ((HappyAbsSyn27  happy_var_7) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn29  happy_var_5) `HappyStk`-	(HappyAbsSyn21  happy_var_4) `HappyStk`-	(HappyAbsSyn235  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn19  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule (Just happy_var_3) happy_var_5 happy_var_7 [] happy_var_4 happy_var_1-                          )))-	) (\r -> happyReturn (HappyAbsSyn16 r))--happyReduce_36 = happyMonadReduce 1 26 happyReduction_36-happyReduction_36 ((HappyAbsSyn27  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( fileSrcSpan >>= \ loc ->-                   return (L loc (HsModule Nothing Nothing happy_var_1 [] Nothing-                          Nothing)))-	) (\r -> happyReturn (HappyAbsSyn16 r))--happyReduce_37 = happySpecReduce_2  27 happyReduction_37-happyReduction_37 (HappyAbsSyn27  happy_var_2)-	_-	 =  HappyAbsSyn27-		 (happy_var_2-	)-happyReduction_37 _ _  = notHappyAtAll --happyReduce_38 = happySpecReduce_2  27 happyReduction_38-happyReduction_38 (HappyAbsSyn27  happy_var_2)-	_-	 =  HappyAbsSyn27-		 (happy_var_2-	)-happyReduction_38 _ _  = notHappyAtAll --happyReduce_39 = happySpecReduce_2  28 happyReduction_39-happyReduction_39 (HappyAbsSyn27  happy_var_2)-	_-	 =  HappyAbsSyn27-		 (happy_var_2-	)-happyReduction_39 _ _  = notHappyAtAll --happyReduce_40 = happySpecReduce_2  28 happyReduction_40-happyReduction_40 (HappyAbsSyn27  happy_var_2)-	_-	 =  HappyAbsSyn27-		 (happy_var_2-	)-happyReduction_40 _ _  = notHappyAtAll --happyReduce_41 = happySpecReduce_3  29 happyReduction_41-happyReduction_41 _-	(HappyAbsSyn30  happy_var_2)-	_-	 =  HappyAbsSyn29-		 (Just happy_var_2-	)-happyReduction_41 _ _ _  = notHappyAtAll --happyReduce_42 = happySpecReduce_0  29 happyReduction_42-happyReduction_42  =  HappyAbsSyn29-		 (Nothing-	)--happyReduce_43 = happySpecReduce_3  30 happyReduction_43-happyReduction_43 (HappyAbsSyn30  happy_var_3)-	_-	(HappyAbsSyn30  happy_var_1)-	 =  HappyAbsSyn30-		 (happy_var_1 ++ happy_var_3-	)-happyReduction_43 _ _ _  = notHappyAtAll --happyReduce_44 = happySpecReduce_1  30 happyReduction_44-happyReduction_44 (HappyAbsSyn30  happy_var_1)-	 =  HappyAbsSyn30-		 (happy_var_1-	)-happyReduction_44 _  = notHappyAtAll --happyReduce_45 = happyReduce 5 31 happyReduction_45-happyReduction_45 ((HappyAbsSyn30  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn30  happy_var_3) `HappyStk`-	(HappyAbsSyn33  happy_var_2) `HappyStk`-	(HappyAbsSyn30  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn30-		 (happy_var_1 ++ (happy_var_2 : happy_var_3) ++ happy_var_5-	) `HappyStk` happyRest--happyReduce_46 = happySpecReduce_3  31 happyReduction_46-happyReduction_46 (HappyAbsSyn30  happy_var_3)-	(HappyAbsSyn33  happy_var_2)-	(HappyAbsSyn30  happy_var_1)-	 =  HappyAbsSyn30-		 (happy_var_1 ++ (happy_var_2 : happy_var_3)-	)-happyReduction_46 _ _ _  = notHappyAtAll --happyReduce_47 = happySpecReduce_1  31 happyReduction_47-happyReduction_47 (HappyAbsSyn30  happy_var_1)-	 =  HappyAbsSyn30-		 (happy_var_1-	)-happyReduction_47 _  = notHappyAtAll --happyReduce_48 = happySpecReduce_2  32 happyReduction_48-happyReduction_48 (HappyAbsSyn30  happy_var_2)-	(HappyAbsSyn33  happy_var_1)-	 =  HappyAbsSyn30-		 (happy_var_1 : happy_var_2-	)-happyReduction_48 _ _  = notHappyAtAll --happyReduce_49 = happySpecReduce_0  32 happyReduction_49-happyReduction_49  =  HappyAbsSyn30-		 ([]-	)--happyReduce_50 = happySpecReduce_1  33 happyReduction_50-happyReduction_50 (HappyAbsSyn240  happy_var_1)-	 =  HappyAbsSyn33-		 (sL (getLoc happy_var_1) (case (unLoc happy_var_1) of (n, doc) -> IEGroup n doc)-	)-happyReduction_50 _  = notHappyAtAll --happyReduce_51 = happySpecReduce_1  33 happyReduction_51-happyReduction_51 (HappyAbsSyn239  happy_var_1)-	 =  HappyAbsSyn33-		 (sL (getLoc happy_var_1) (IEDocNamed ((fst . unLoc) happy_var_1))-	)-happyReduction_51 _  = notHappyAtAll --happyReduce_52 = happySpecReduce_1  33 happyReduction_52-happyReduction_52 (HappyAbsSyn237  happy_var_1)-	 =  HappyAbsSyn33-		 (sL (getLoc happy_var_1) (IEDoc (unLoc happy_var_1))-	)-happyReduction_52 _  = notHappyAtAll --happyReduce_53 = happySpecReduce_2  34 happyReduction_53-happyReduction_53 (HappyAbsSyn35  happy_var_2)-	(HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn33-		 (sL (comb2 happy_var_1 happy_var_2) (mkModuleImpExp (unLoc happy_var_1)-                                                             (unLoc happy_var_2))-	)-happyReduction_53 _ _  = notHappyAtAll --happyReduce_54 = happySpecReduce_2  34 happyReduction_54-happyReduction_54 (HappyAbsSyn235  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn33-		 (sL (comb2 happy_var_1 happy_var_2) (IEModuleContents (unLoc happy_var_2))-	)-happyReduction_54 _ _  = notHappyAtAll --happyReduce_55 = happySpecReduce_0  35 happyReduction_55-happyReduction_55  =  HappyAbsSyn35-		 (L noSrcSpan ImpExpAbs-	)--happyReduce_56 = happySpecReduce_3  35 happyReduction_56-happyReduction_56 (HappyTerminal happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn35-		 (sL (comb2 happy_var_1 happy_var_3) ImpExpAll-	)-happyReduction_56 _ _ _  = notHappyAtAll --happyReduce_57 = happySpecReduce_2  35 happyReduction_57-happyReduction_57 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn35-		 (sL (comb2 happy_var_1 happy_var_2) (ImpExpList [])-	)-happyReduction_57 _ _  = notHappyAtAll --happyReduce_58 = happySpecReduce_3  35 happyReduction_58-happyReduction_58 (HappyTerminal happy_var_3)-	(HappyAbsSyn36  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn35-		 (sL (comb2 happy_var_1 happy_var_3) (ImpExpList (reverse happy_var_2))-	)-happyReduction_58 _ _ _  = notHappyAtAll --happyReduce_59 = happySpecReduce_3  36 happyReduction_59-happyReduction_59 (HappyAbsSyn17  happy_var_3)-	_-	(HappyAbsSyn36  happy_var_1)-	 =  HappyAbsSyn36-		 (unLoc happy_var_3 : happy_var_1-	)-happyReduction_59 _ _ _  = notHappyAtAll --happyReduce_60 = happySpecReduce_1  36 happyReduction_60-happyReduction_60 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn36-		 ([unLoc happy_var_1]-	)-happyReduction_60 _  = notHappyAtAll --happyReduce_61 = happySpecReduce_1  37 happyReduction_61-happyReduction_61 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_61 _  = notHappyAtAll --happyReduce_62 = happyMonadReduce 2 37 happyReduction_62-happyReduction_62 ((HappyAbsSyn17  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkTypeImpExp (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_2)))-	) (\r -> happyReturn (HappyAbsSyn17 r))--happyReduce_63 = happySpecReduce_1  38 happyReduction_63-happyReduction_63 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_63 _  = notHappyAtAll --happyReduce_64 = happySpecReduce_1  38 happyReduction_64-happyReduction_64 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_64 _  = notHappyAtAll --happyReduce_65 = happySpecReduce_3  39 happyReduction_65-happyReduction_65 (HappyAbsSyn40  happy_var_3)-	_-	(HappyAbsSyn27  happy_var_1)-	 =  HappyAbsSyn27-		 (happy_var_3 : happy_var_1-	)-happyReduction_65 _ _ _  = notHappyAtAll --happyReduce_66 = happySpecReduce_2  39 happyReduction_66-happyReduction_66 _-	(HappyAbsSyn27  happy_var_1)-	 =  HappyAbsSyn27-		 (happy_var_1-	)-happyReduction_66 _ _  = notHappyAtAll --happyReduce_67 = happySpecReduce_1  39 happyReduction_67-happyReduction_67 (HappyAbsSyn40  happy_var_1)-	 =  HappyAbsSyn27-		 ([ happy_var_1 ]-	)-happyReduction_67 _  = notHappyAtAll --happyReduce_68 = happySpecReduce_0  39 happyReduction_68-happyReduction_68  =  HappyAbsSyn27-		 ([]-	)--happyReduce_69 = happyReduce 8 40 happyReduction_69-happyReduction_69 ((HappyAbsSyn46  happy_var_8) `HappyStk`-	(HappyAbsSyn45  happy_var_7) `HappyStk`-	(HappyAbsSyn235  happy_var_6) `HappyStk`-	(HappyAbsSyn43  happy_var_5) `HappyStk`-	(HappyAbsSyn42  happy_var_4) `HappyStk`-	(HappyAbsSyn42  happy_var_3) `HappyStk`-	(HappyAbsSyn41  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn40-		 (L (comb4 happy_var_1 happy_var_6 happy_var_7 happy_var_8) $-                  ImportDecl { ideclName = happy_var_6, ideclPkgQual = happy_var_5-                             , ideclSource = happy_var_2, ideclSafe = happy_var_3-                             , ideclQualified = happy_var_4, ideclImplicit = False-                             , ideclAs = unLoc happy_var_7, ideclHiding = unLoc happy_var_8 }-	) `HappyStk` happyRest--happyReduce_70 = happySpecReduce_2  41 happyReduction_70-happyReduction_70 _-	_-	 =  HappyAbsSyn41-		 (True-	)--happyReduce_71 = happySpecReduce_0  41 happyReduction_71-happyReduction_71  =  HappyAbsSyn41-		 (False-	)--happyReduce_72 = happySpecReduce_1  42 happyReduction_72-happyReduction_72 _-	 =  HappyAbsSyn42-		 (True-	)--happyReduce_73 = happySpecReduce_0  42 happyReduction_73-happyReduction_73  =  HappyAbsSyn42-		 (False-	)--happyReduce_74 = happySpecReduce_1  43 happyReduction_74-happyReduction_74 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn43-		 (Just (getSTRING happy_var_1)-	)-happyReduction_74 _  = notHappyAtAll --happyReduce_75 = happySpecReduce_0  43 happyReduction_75-happyReduction_75  =  HappyAbsSyn43-		 (Nothing-	)--happyReduce_76 = happySpecReduce_1  44 happyReduction_76-happyReduction_76 _-	 =  HappyAbsSyn42-		 (True-	)--happyReduce_77 = happySpecReduce_0  44 happyReduction_77-happyReduction_77  =  HappyAbsSyn42-		 (False-	)--happyReduce_78 = happySpecReduce_2  45 happyReduction_78-happyReduction_78 (HappyAbsSyn235  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn45-		 (sL (comb2 happy_var_1 happy_var_2) (Just (unLoc happy_var_2))-	)-happyReduction_78 _ _  = notHappyAtAll --happyReduce_79 = happySpecReduce_0  45 happyReduction_79-happyReduction_79  =  HappyAbsSyn45-		 (noLoc Nothing-	)--happyReduce_80 = happySpecReduce_1  46 happyReduction_80-happyReduction_80 (HappyAbsSyn47  happy_var_1)-	 =  HappyAbsSyn46-		 (sL (getLoc happy_var_1) (Just (unLoc happy_var_1))-	)-happyReduction_80 _  = notHappyAtAll --happyReduce_81 = happySpecReduce_0  46 happyReduction_81-happyReduction_81  =  HappyAbsSyn46-		 (noLoc Nothing-	)--happyReduce_82 = happySpecReduce_3  47 happyReduction_82-happyReduction_82 (HappyTerminal happy_var_3)-	(HappyAbsSyn30  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn47-		 (sL (comb2 happy_var_1 happy_var_3) (False, happy_var_2)-	)-happyReduction_82 _ _ _  = notHappyAtAll --happyReduce_83 = happyReduce 4 47 happyReduction_83-happyReduction_83 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn30  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn47-		 (sL (comb2 happy_var_1 happy_var_4) (True,  happy_var_3)-	) `HappyStk` happyRest--happyReduce_84 = happySpecReduce_0  48 happyReduction_84-happyReduction_84  =  HappyAbsSyn48-		 (9-	)--happyReduce_85 = happyMonadReduce 1 48 happyReduction_85-happyReduction_85 ((HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkPrecP (sL (getLoc happy_var_1) (fromInteger (getINTEGER happy_var_1))))-	) (\r -> happyReturn (HappyAbsSyn48 r))--happyReduce_86 = happySpecReduce_1  49 happyReduction_86-happyReduction_86 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn49-		 (sL (getLoc happy_var_1) InfixN-	)-happyReduction_86 _  = notHappyAtAll --happyReduce_87 = happySpecReduce_1  49 happyReduction_87-happyReduction_87 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn49-		 (sL (getLoc happy_var_1) InfixL-	)-happyReduction_87 _  = notHappyAtAll --happyReduce_88 = happySpecReduce_1  49 happyReduction_88-happyReduction_88 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn49-		 (sL (getLoc happy_var_1) InfixR-	)-happyReduction_88 _  = notHappyAtAll --happyReduce_89 = happySpecReduce_3  50 happyReduction_89-happyReduction_89 (HappyAbsSyn17  happy_var_3)-	_-	(HappyAbsSyn50  happy_var_1)-	 =  HappyAbsSyn50-		 (sL (comb2 happy_var_1 happy_var_3) (happy_var_3 : unLoc happy_var_1)-	)-happyReduction_89 _ _ _  = notHappyAtAll --happyReduce_90 = happySpecReduce_1  50 happyReduction_90-happyReduction_90 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn50-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_90 _  = notHappyAtAll --happyReduce_91 = happySpecReduce_3  51 happyReduction_91-happyReduction_91 (HappyAbsSyn51  happy_var_3)-	_-	(HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1 `appOL` happy_var_3-	)-happyReduction_91 _ _ _  = notHappyAtAll --happyReduce_92 = happySpecReduce_2  51 happyReduction_92-happyReduction_92 _-	(HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1-	)-happyReduction_92 _ _  = notHappyAtAll --happyReduce_93 = happySpecReduce_1  51 happyReduction_93-happyReduction_93 (HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1-	)-happyReduction_93 _  = notHappyAtAll --happyReduce_94 = happySpecReduce_1  52 happyReduction_94-happyReduction_94 (HappyAbsSyn53  happy_var_1)-	 =  HappyAbsSyn51-		 (unitOL (sL (getLoc happy_var_1) (TyClD (unLoc happy_var_1)))-	)-happyReduction_94 _  = notHappyAtAll --happyReduce_95 = happySpecReduce_1  52 happyReduction_95-happyReduction_95 (HappyAbsSyn53  happy_var_1)-	 =  HappyAbsSyn51-		 (unitOL (sL (getLoc happy_var_1) (TyClD (unLoc happy_var_1)))-	)-happyReduction_95 _  = notHappyAtAll --happyReduce_96 = happySpecReduce_1  52 happyReduction_96-happyReduction_96 (HappyAbsSyn55  happy_var_1)-	 =  HappyAbsSyn51-		 (unitOL (sL (getLoc happy_var_1) (InstD (unLoc happy_var_1)))-	)-happyReduction_96 _  = notHappyAtAll --happyReduce_97 = happySpecReduce_1  52 happyReduction_97-happyReduction_97 (HappyAbsSyn62  happy_var_1)-	 =  HappyAbsSyn51-		 (unitOL (sL (comb2 happy_var_1 happy_var_1) (DerivD (unLoc happy_var_1)))-	)-happyReduction_97 _  = notHappyAtAll --happyReduce_98 = happyReduce 4 52 happyReduction_98-happyReduction_98 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn98  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn51-		 (unitOL (sL (comb2 happy_var_1 happy_var_4) $ DefD (DefaultDecl happy_var_3))-	) `HappyStk` happyRest--happyReduce_99 = happySpecReduce_2  52 happyReduction_99-happyReduction_99 (HappyAbsSyn15  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn51-		 (unitOL (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_2))-	)-happyReduction_99 _ _  = notHappyAtAll --happyReduce_100 = happySpecReduce_3  52 happyReduction_100-happyReduction_100 _-	(HappyAbsSyn51  happy_var_2)-	_-	 =  HappyAbsSyn51-		 (happy_var_2-	)-happyReduction_100 _ _ _  = notHappyAtAll --happyReduce_101 = happySpecReduce_3  52 happyReduction_101-happyReduction_101 _-	(HappyAbsSyn51  happy_var_2)-	_-	 =  HappyAbsSyn51-		 (happy_var_2-	)-happyReduction_101 _ _ _  = notHappyAtAll --happyReduce_102 = happySpecReduce_3  52 happyReduction_102-happyReduction_102 _-	(HappyAbsSyn51  happy_var_2)-	_-	 =  HappyAbsSyn51-		 (happy_var_2-	)-happyReduction_102 _ _ _  = notHappyAtAll --happyReduce_103 = happySpecReduce_3  52 happyReduction_103-happyReduction_103 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn51-		 (unitOL $ sL (comb2 happy_var_1 happy_var_3) $ VectD (HsVect       happy_var_2 Nothing)-	)-happyReduction_103 _ _ _  = notHappyAtAll --happyReduce_104 = happyReduce 5 52 happyReduction_104-happyReduction_104 ((HappyTerminal happy_var_5) `HappyStk`-	(HappyAbsSyn143  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn51-		 (unitOL $ sL (comb2 happy_var_1 happy_var_5) $ VectD (HsVect       happy_var_2 (Just happy_var_4))-	) `HappyStk` happyRest--happyReduce_105 = happySpecReduce_3  52 happyReduction_105-happyReduction_105 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn51-		 (unitOL $ sL (comb2 happy_var_1 happy_var_3) $ VectD (HsNoVect     happy_var_2)-	)-happyReduction_105 _ _ _  = notHappyAtAll --happyReduce_106 = happyReduce 4 52 happyReduction_106-happyReduction_106 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn51-		 (unitOL $ sL (comb2 happy_var_1 happy_var_4) $ -                                                    VectD (HsVectTypeIn False happy_var_3 Nothing)-	) `HappyStk` happyRest--happyReduce_107 = happyReduce 4 52 happyReduction_107-happyReduction_107 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn51-		 (unitOL $ sL (comb2 happy_var_1 happy_var_4) $ -                                                    VectD (HsVectTypeIn True happy_var_3 Nothing)-	) `HappyStk` happyRest--happyReduce_108 = happyReduce 6 52 happyReduction_108-happyReduction_108 ((HappyTerminal happy_var_6) `HappyStk`-	(HappyAbsSyn17  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn51-		 (unitOL $ sL (comb2 happy_var_1 happy_var_6) $ -                                                    VectD (HsVectTypeIn False happy_var_3 (Just happy_var_5))-	) `HappyStk` happyRest--happyReduce_109 = happyReduce 6 52 happyReduction_109-happyReduction_109 ((HappyTerminal happy_var_6) `HappyStk`-	(HappyAbsSyn17  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn51-		 (unitOL $ sL (comb2 happy_var_1 happy_var_6) $ -                                                    VectD (HsVectTypeIn True happy_var_3 (Just happy_var_5))-	) `HappyStk` happyRest--happyReduce_110 = happyReduce 4 52 happyReduction_110-happyReduction_110 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn51-		 (unitOL $ sL (comb2 happy_var_1 happy_var_4) $ VectD (HsVectClassIn happy_var_3)-	) `HappyStk` happyRest--happyReduce_111 = happyReduce 4 52 happyReduction_111-happyReduction_111 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn95  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn51-		 (unitOL $ sL (comb2 happy_var_1 happy_var_4) $ VectD (HsVectInstIn happy_var_3)-	) `HappyStk` happyRest--happyReduce_112 = happySpecReduce_1  52 happyReduction_112-happyReduction_112 (HappyAbsSyn15  happy_var_1)-	 =  HappyAbsSyn51-		 (unitOL happy_var_1-	)-happyReduction_112 _  = notHappyAtAll --happyReduce_113 = happySpecReduce_1  52 happyReduction_113-happyReduction_113 (HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn51-		 (unLoc happy_var_1-	)-happyReduction_113 _  = notHappyAtAll --happyReduce_114 = happyMonadReduce 4 53 happyReduction_114-happyReduction_114 ((HappyAbsSyn63  happy_var_4) `HappyStk`-	(HappyAbsSyn114  happy_var_3) `HappyStk`-	(HappyAbsSyn60  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkClassDecl (comb4 happy_var_1 happy_var_2 happy_var_3 happy_var_4) happy_var_2 happy_var_3 happy_var_4)-	) (\r -> happyReturn (HappyAbsSyn53 r))--happyReduce_115 = happyMonadReduce 4 54 happyReduction_115-happyReduction_115 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkTySynonym (comb2 happy_var_1 happy_var_4) happy_var_2 happy_var_4)-	) (\r -> happyReturn (HappyAbsSyn53 r))--happyReduce_116 = happyMonadReduce 4 54 happyReduction_116-happyReduction_116 ((HappyAbsSyn59  happy_var_4) `HappyStk`-	(HappyAbsSyn95  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkTyFamily (comb3 happy_var_1 happy_var_3 happy_var_4) TypeFamily happy_var_3 (unLoc happy_var_4))-	) (\r -> happyReturn (HappyAbsSyn53 r))--happyReduce_117 = happyMonadReduce 5 54 happyReduction_117-happyReduction_117 ((HappyAbsSyn134  happy_var_5) `HappyStk`-	(HappyAbsSyn123  happy_var_4) `HappyStk`-	(HappyAbsSyn60  happy_var_3) `HappyStk`-	(HappyAbsSyn61  happy_var_2) `HappyStk`-	(HappyAbsSyn58  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkTyData (comb4 happy_var_1 happy_var_3 happy_var_4 happy_var_5) (unLoc happy_var_1) happy_var_2 happy_var_3 -                            Nothing (reverse (unLoc happy_var_4)) (unLoc happy_var_5))-	) (\r -> happyReturn (HappyAbsSyn53 r))--happyReduce_118 = happyMonadReduce 6 54 happyReduction_118-happyReduction_118 ((HappyAbsSyn134  happy_var_6) `HappyStk`-	(HappyAbsSyn123  happy_var_5) `HappyStk`-	(HappyAbsSyn59  happy_var_4) `HappyStk`-	(HappyAbsSyn60  happy_var_3) `HappyStk`-	(HappyAbsSyn61  happy_var_2) `HappyStk`-	(HappyAbsSyn58  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkTyData (comb4 happy_var_1 happy_var_3 happy_var_5 happy_var_6) (unLoc happy_var_1) happy_var_2 happy_var_3 -                            (unLoc happy_var_4) (unLoc happy_var_5) (unLoc happy_var_6))-	) (\r -> happyReturn (HappyAbsSyn53 r))--happyReduce_119 = happyMonadReduce 4 54 happyReduction_119-happyReduction_119 ((HappyAbsSyn59  happy_var_4) `HappyStk`-	(HappyAbsSyn95  happy_var_3) `HappyStk`-	(HappyTerminal happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkTyFamily (comb3 happy_var_1 happy_var_2 happy_var_4) DataFamily happy_var_3 (unLoc happy_var_4))-	) (\r -> happyReturn (HappyAbsSyn53 r))--happyReduce_120 = happySpecReduce_3  55 happyReduction_120-happyReduction_120 (HappyAbsSyn63  happy_var_3)-	(HappyAbsSyn95  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn55-		 (let (binds, sigs, _, ats, _) = cvBindsAndSigs (unLoc happy_var_3)-                   in L (comb3 happy_var_1 happy_var_2 happy_var_3) (ClsInstD { cid_poly_ty = happy_var_2, cid_binds = binds-                                                   , cid_sigs = sigs, cid_fam_insts = ats })-	)-happyReduction_120 _ _ _  = notHappyAtAll --happyReduce_121 = happyMonadReduce 5 55 happyReduction_121-happyReduction_121 ((HappyAbsSyn95  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { L loc d <- mkFamInstSynonym (comb2 happy_var_1 happy_var_5) happy_var_3 happy_var_5-                      ; return (L loc (FamInstD { lid_inst = d })) })-	) (\r -> happyReturn (HappyAbsSyn55 r))--happyReduce_122 = happyMonadReduce 5 55 happyReduction_122-happyReduction_122 ((HappyAbsSyn134  happy_var_5) `HappyStk`-	(HappyAbsSyn123  happy_var_4) `HappyStk`-	(HappyAbsSyn60  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn58  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { L loc d <- mkFamInstData (comb4 happy_var_1 happy_var_3 happy_var_4 happy_var_5) (unLoc happy_var_1) Nothing happy_var_3-                                      Nothing (reverse (unLoc happy_var_4)) (unLoc happy_var_5)-                      ; return (L loc (FamInstD { lid_inst = d })) })-	) (\r -> happyReturn (HappyAbsSyn55 r))--happyReduce_123 = happyMonadReduce 6 55 happyReduction_123-happyReduction_123 ((HappyAbsSyn134  happy_var_6) `HappyStk`-	(HappyAbsSyn123  happy_var_5) `HappyStk`-	(HappyAbsSyn59  happy_var_4) `HappyStk`-	(HappyAbsSyn60  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn58  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { L loc d <- mkFamInstData (comb4 happy_var_1 happy_var_3 happy_var_5 happy_var_6) (unLoc happy_var_1) Nothing happy_var_3-                                            (unLoc happy_var_4) (unLoc happy_var_5) (unLoc happy_var_6)-                      ; return (L loc (FamInstD { lid_inst = d })) })-	) (\r -> happyReturn (HappyAbsSyn55 r))--happyReduce_124 = happyMonadReduce 3 56 happyReduction_124-happyReduction_124 ((HappyAbsSyn59  happy_var_3) `HappyStk`-	(HappyAbsSyn95  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { L loc decl <- mkTyFamily (comb3 happy_var_1 happy_var_2 happy_var_3) TypeFamily happy_var_2 (unLoc happy_var_3)-                      ; return (L loc (TyClD decl)) })-	) (\r -> happyReturn (HappyAbsSyn15 r))--happyReduce_125 = happyMonadReduce 3 56 happyReduction_125-happyReduction_125 ((HappyAbsSyn59  happy_var_3) `HappyStk`-	(HappyAbsSyn95  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { L loc decl <- mkTyFamily (comb3 happy_var_1 happy_var_2 happy_var_3) DataFamily happy_var_2 (unLoc happy_var_3)-                      ; return (L loc (TyClD decl)) })-	) (\r -> happyReturn (HappyAbsSyn15 r))--happyReduce_126 = happyMonadReduce 4 56 happyReduction_126-happyReduction_126 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { L loc fid <- mkFamInstSynonym (comb2 happy_var_1 happy_var_4) happy_var_2 happy_var_4-                      ; return (L loc (InstD (FamInstD { lid_inst = fid }))) })-	) (\r -> happyReturn (HappyAbsSyn15 r))--happyReduce_127 = happyMonadReduce 4 57 happyReduction_127-happyReduction_127 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkFamInstSynonym (comb2 happy_var_1 happy_var_4) happy_var_2 happy_var_4)-	) (\r -> happyReturn (HappyAbsSyn57 r))--happyReduce_128 = happyMonadReduce 5 57 happyReduction_128-happyReduction_128 ((HappyAbsSyn134  happy_var_5) `HappyStk`-	(HappyAbsSyn123  happy_var_4) `HappyStk`-	(HappyAbsSyn60  happy_var_3) `HappyStk`-	(HappyAbsSyn61  happy_var_2) `HappyStk`-	(HappyAbsSyn58  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkFamInstData (comb4 happy_var_1 happy_var_3 happy_var_4 happy_var_5) (unLoc happy_var_1) happy_var_2 happy_var_3 -                                 Nothing (reverse (unLoc happy_var_4)) (unLoc happy_var_5))-	) (\r -> happyReturn (HappyAbsSyn57 r))--happyReduce_129 = happyMonadReduce 6 57 happyReduction_129-happyReduction_129 ((HappyAbsSyn134  happy_var_6) `HappyStk`-	(HappyAbsSyn123  happy_var_5) `HappyStk`-	(HappyAbsSyn59  happy_var_4) `HappyStk`-	(HappyAbsSyn60  happy_var_3) `HappyStk`-	(HappyAbsSyn61  happy_var_2) `HappyStk`-	(HappyAbsSyn58  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkFamInstData (comb4 happy_var_1 happy_var_3 happy_var_5 happy_var_6) (unLoc happy_var_1) happy_var_2 happy_var_3 -                                 (unLoc happy_var_4) (unLoc happy_var_5) (unLoc happy_var_6))-	) (\r -> happyReturn (HappyAbsSyn57 r))--happyReduce_130 = happySpecReduce_1  58 happyReduction_130-happyReduction_130 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn58-		 (sL (getLoc happy_var_1) DataType-	)-happyReduction_130 _  = notHappyAtAll --happyReduce_131 = happySpecReduce_1  58 happyReduction_131-happyReduction_131 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn58-		 (sL (getLoc happy_var_1) NewType-	)-happyReduction_131 _  = notHappyAtAll --happyReduce_132 = happySpecReduce_0  59 happyReduction_132-happyReduction_132  =  HappyAbsSyn59-		 (noLoc Nothing-	)--happyReduce_133 = happySpecReduce_2  59 happyReduction_133-happyReduction_133 (HappyAbsSyn118  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn59-		 (sL (comb2 happy_var_1 happy_var_2) (Just happy_var_2)-	)-happyReduction_133 _ _  = notHappyAtAll --happyReduce_134 = happySpecReduce_3  60 happyReduction_134-happyReduction_134 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn103  happy_var_1)-	 =  HappyAbsSyn60-		 (sL (comb2 happy_var_1 happy_var_3) (Just happy_var_1, happy_var_3)-	)-happyReduction_134 _ _ _  = notHappyAtAll --happyReduce_135 = happySpecReduce_1  60 happyReduction_135-happyReduction_135 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn60-		 (sL (getLoc happy_var_1) (Nothing, happy_var_1)-	)-happyReduction_135 _  = notHappyAtAll --happyReduce_136 = happyReduce 4 61 happyReduction_136-happyReduction_136 (_ `HappyStk`-	(HappyTerminal happy_var_3) `HappyStk`-	(HappyTerminal happy_var_2) `HappyStk`-	_ `HappyStk`-	happyRest)-	 = HappyAbsSyn61-		 (Just (CType (Just (Header (getSTRING happy_var_2))) (getSTRING happy_var_3))-	) `HappyStk` happyRest--happyReduce_137 = happySpecReduce_3  61 happyReduction_137-happyReduction_137 _-	(HappyTerminal happy_var_2)-	_-	 =  HappyAbsSyn61-		 (Just (CType Nothing                        (getSTRING happy_var_2))-	)-happyReduction_137 _ _ _  = notHappyAtAll --happyReduce_138 = happySpecReduce_0  61 happyReduction_138-happyReduction_138  =  HappyAbsSyn61-		 (Nothing-	)--happyReduce_139 = happySpecReduce_3  62 happyReduction_139-happyReduction_139 (HappyAbsSyn95  happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn62-		 (sL (comb2 happy_var_1 happy_var_3) (DerivDecl happy_var_3)-	)-happyReduction_139 _ _ _  = notHappyAtAll --happyReduce_140 = happySpecReduce_1  63 happyReduction_140-happyReduction_140 (HappyAbsSyn15  happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_1) (unitOL happy_var_1)-	)-happyReduction_140 _  = notHappyAtAll --happyReduce_141 = happySpecReduce_1  63 happyReduction_141-happyReduction_141 (HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (happy_var_1-	)-happyReduction_141 _  = notHappyAtAll --happyReduce_142 = happyMonadReduce 4 63 happyReduction_142-happyReduction_142 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { (TypeSig l ty) <- checkValSig happy_var_2 happy_var_4-                          ; return (sL (comb2 happy_var_1 happy_var_4) $ unitOL (sL (comb2 happy_var_1 happy_var_4) $ SigD (GenericSig l ty))) })-	) (\r -> happyReturn (HappyAbsSyn63 r))--happyReduce_143 = happySpecReduce_3  64 happyReduction_143-happyReduction_143 (HappyAbsSyn63  happy_var_3)-	_-	(HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_1 `appOL` unLoc happy_var_3)-	)-happyReduction_143 _ _ _  = notHappyAtAll --happyReduce_144 = happySpecReduce_2  64 happyReduction_144-happyReduction_144 (HappyTerminal happy_var_2)-	(HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_1)-	)-happyReduction_144 _ _  = notHappyAtAll --happyReduce_145 = happySpecReduce_1  64 happyReduction_145-happyReduction_145 (HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (happy_var_1-	)-happyReduction_145 _  = notHappyAtAll --happyReduce_146 = happySpecReduce_0  64 happyReduction_146-happyReduction_146  =  HappyAbsSyn63-		 (noLoc nilOL-	)--happyReduce_147 = happySpecReduce_3  65 happyReduction_147-happyReduction_147 (HappyTerminal happy_var_3)-	(HappyAbsSyn63  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_147 _ _ _  = notHappyAtAll --happyReduce_148 = happySpecReduce_3  65 happyReduction_148-happyReduction_148 _-	(HappyAbsSyn63  happy_var_2)-	_-	 =  HappyAbsSyn63-		 (happy_var_2-	)-happyReduction_148 _ _ _  = notHappyAtAll --happyReduce_149 = happySpecReduce_2  66 happyReduction_149-happyReduction_149 (HappyAbsSyn63  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_2)-	)-happyReduction_149 _ _  = notHappyAtAll --happyReduce_150 = happySpecReduce_0  66 happyReduction_150-happyReduction_150  =  HappyAbsSyn63-		 (noLoc nilOL-	)--happyReduce_151 = happySpecReduce_1  67 happyReduction_151-happyReduction_151 (HappyAbsSyn57  happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_1) (unitOL (sL (getLoc happy_var_1) (InstD (FamInstD { lid_inst = unLoc happy_var_1 }))))-	)-happyReduction_151 _  = notHappyAtAll --happyReduce_152 = happySpecReduce_1  67 happyReduction_152-happyReduction_152 (HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (happy_var_1-	)-happyReduction_152 _  = notHappyAtAll --happyReduce_153 = happySpecReduce_3  68 happyReduction_153-happyReduction_153 (HappyAbsSyn63  happy_var_3)-	_-	(HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_1 `appOL` unLoc happy_var_3)-	)-happyReduction_153 _ _ _  = notHappyAtAll --happyReduce_154 = happySpecReduce_2  68 happyReduction_154-happyReduction_154 (HappyTerminal happy_var_2)-	(HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_1)-	)-happyReduction_154 _ _  = notHappyAtAll --happyReduce_155 = happySpecReduce_1  68 happyReduction_155-happyReduction_155 (HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (happy_var_1-	)-happyReduction_155 _  = notHappyAtAll --happyReduce_156 = happySpecReduce_0  68 happyReduction_156-happyReduction_156  =  HappyAbsSyn63-		 (noLoc nilOL-	)--happyReduce_157 = happySpecReduce_3  69 happyReduction_157-happyReduction_157 (HappyTerminal happy_var_3)-	(HappyAbsSyn63  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_157 _ _ _  = notHappyAtAll --happyReduce_158 = happySpecReduce_3  69 happyReduction_158-happyReduction_158 _-	(HappyAbsSyn63  happy_var_2)-	_-	 =  HappyAbsSyn63-		 (happy_var_2-	)-happyReduction_158 _ _ _  = notHappyAtAll --happyReduce_159 = happySpecReduce_2  70 happyReduction_159-happyReduction_159 (HappyAbsSyn63  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_2)-	)-happyReduction_159 _ _  = notHappyAtAll --happyReduce_160 = happySpecReduce_0  70 happyReduction_160-happyReduction_160  =  HappyAbsSyn63-		 (noLoc nilOL-	)--happyReduce_161 = happySpecReduce_3  71 happyReduction_161-happyReduction_161 (HappyAbsSyn63  happy_var_3)-	_-	(HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (let { this = unLoc happy_var_3;-                                    rest = unLoc happy_var_1;-                                    these = rest `appOL` this }-                              in rest `seq` this `seq` these `seq`-                                    sL (comb2 happy_var_1 happy_var_3) these-	)-happyReduction_161 _ _ _  = notHappyAtAll --happyReduce_162 = happySpecReduce_2  71 happyReduction_162-happyReduction_162 (HappyTerminal happy_var_2)-	(HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_1)-	)-happyReduction_162 _ _  = notHappyAtAll --happyReduce_163 = happySpecReduce_1  71 happyReduction_163-happyReduction_163 (HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (happy_var_1-	)-happyReduction_163 _  = notHappyAtAll --happyReduce_164 = happySpecReduce_0  71 happyReduction_164-happyReduction_164  =  HappyAbsSyn63-		 (noLoc nilOL-	)--happyReduce_165 = happySpecReduce_3  72 happyReduction_165-happyReduction_165 (HappyTerminal happy_var_3)-	(HappyAbsSyn63  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_165 _ _ _  = notHappyAtAll --happyReduce_166 = happySpecReduce_3  72 happyReduction_166-happyReduction_166 _-	(HappyAbsSyn63  happy_var_2)-	_-	 =  HappyAbsSyn63-		 (happy_var_2-	)-happyReduction_166 _ _ _  = notHappyAtAll --happyReduce_167 = happySpecReduce_1  73 happyReduction_167-happyReduction_167 (HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn73-		 (sL (getLoc happy_var_1) (HsValBinds (cvBindGroup (unLoc happy_var_1)))-	)-happyReduction_167 _  = notHappyAtAll --happyReduce_168 = happySpecReduce_3  73 happyReduction_168-happyReduction_168 (HappyTerminal happy_var_3)-	(HappyAbsSyn190  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn73-		 (sL (comb2 happy_var_1 happy_var_3) (HsIPBinds (IPBinds (unLoc happy_var_2) emptyTcEvBinds))-	)-happyReduction_168 _ _ _  = notHappyAtAll --happyReduce_169 = happySpecReduce_3  73 happyReduction_169-happyReduction_169 _-	(HappyAbsSyn190  happy_var_2)-	_-	 =  HappyAbsSyn73-		 (L (getLoc happy_var_2) (HsIPBinds (IPBinds (unLoc happy_var_2) emptyTcEvBinds))-	)-happyReduction_169 _ _ _  = notHappyAtAll --happyReduce_170 = happySpecReduce_2  74 happyReduction_170-happyReduction_170 (HappyAbsSyn73  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn73-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_2)-	)-happyReduction_170 _ _  = notHappyAtAll --happyReduce_171 = happySpecReduce_0  74 happyReduction_171-happyReduction_171  =  HappyAbsSyn73-		 (noLoc emptyLocalBinds-	)--happyReduce_172 = happySpecReduce_3  75 happyReduction_172-happyReduction_172 (HappyAbsSyn15  happy_var_3)-	_-	(HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1 `snocOL` happy_var_3-	)-happyReduction_172 _ _ _  = notHappyAtAll --happyReduce_173 = happySpecReduce_2  75 happyReduction_173-happyReduction_173 _-	(HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1-	)-happyReduction_173 _ _  = notHappyAtAll --happyReduce_174 = happySpecReduce_1  75 happyReduction_174-happyReduction_174 (HappyAbsSyn15  happy_var_1)-	 =  HappyAbsSyn51-		 (unitOL happy_var_1-	)-happyReduction_174 _  = notHappyAtAll --happyReduce_175 = happySpecReduce_0  75 happyReduction_175-happyReduction_175  =  HappyAbsSyn51-		 (nilOL-	)--happyReduce_176 = happyReduce 6 76 happyReduction_176-happyReduction_176 ((HappyAbsSyn143  happy_var_6) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_4) `HappyStk`-	(HappyAbsSyn79  happy_var_3) `HappyStk`-	(HappyAbsSyn77  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn15-		 (sL (comb2 happy_var_1 happy_var_6) $ RuleD (HsRule (getSTRING happy_var_1) -                                  (happy_var_2 `orElse` AlwaysActive) -                                  happy_var_3 happy_var_4 placeHolderNames happy_var_6 placeHolderNames)-	) `HappyStk` happyRest--happyReduce_177 = happySpecReduce_0  77 happyReduction_177-happyReduction_177  =  HappyAbsSyn77-		 (Nothing-	)--happyReduce_178 = happySpecReduce_1  77 happyReduction_178-happyReduction_178 (HappyAbsSyn78  happy_var_1)-	 =  HappyAbsSyn77-		 (Just happy_var_1-	)-happyReduction_178 _  = notHappyAtAll --happyReduce_179 = happySpecReduce_3  78 happyReduction_179-happyReduction_179 _-	(HappyTerminal happy_var_2)-	_-	 =  HappyAbsSyn78-		 (ActiveAfter  (fromInteger (getINTEGER happy_var_2))-	)-happyReduction_179 _ _ _  = notHappyAtAll --happyReduce_180 = happyReduce 4 78 happyReduction_180-happyReduction_180 (_ `HappyStk`-	(HappyTerminal happy_var_3) `HappyStk`-	_ `HappyStk`-	_ `HappyStk`-	happyRest)-	 = HappyAbsSyn78-		 (ActiveBefore (fromInteger (getINTEGER happy_var_3))-	) `HappyStk` happyRest--happyReduce_181 = happySpecReduce_3  79 happyReduction_181-happyReduction_181 _-	(HappyAbsSyn79  happy_var_2)-	_-	 =  HappyAbsSyn79-		 (happy_var_2-	)-happyReduction_181 _ _ _  = notHappyAtAll --happyReduce_182 = happySpecReduce_0  79 happyReduction_182-happyReduction_182  =  HappyAbsSyn79-		 ([]-	)--happyReduce_183 = happySpecReduce_1  80 happyReduction_183-happyReduction_183 (HappyAbsSyn81  happy_var_1)-	 =  HappyAbsSyn79-		 ([happy_var_1]-	)-happyReduction_183 _  = notHappyAtAll --happyReduce_184 = happySpecReduce_2  80 happyReduction_184-happyReduction_184 (HappyAbsSyn79  happy_var_2)-	(HappyAbsSyn81  happy_var_1)-	 =  HappyAbsSyn79-		 (happy_var_1 : happy_var_2-	)-happyReduction_184 _ _  = notHappyAtAll --happyReduce_185 = happySpecReduce_1  81 happyReduction_185-happyReduction_185 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn81-		 (RuleBndr happy_var_1-	)-happyReduction_185 _  = notHappyAtAll --happyReduce_186 = happyReduce 5 81 happyReduction_186-happyReduction_186 (_ `HappyStk`-	(HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_2) `HappyStk`-	_ `HappyStk`-	happyRest)-	 = HappyAbsSyn81-		 (RuleBndrSig happy_var_2 (mkHsWithBndrs happy_var_4)-	) `HappyStk` happyRest--happyReduce_187 = happySpecReduce_3  82 happyReduction_187-happyReduction_187 (HappyAbsSyn51  happy_var_3)-	_-	(HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1 `appOL` happy_var_3-	)-happyReduction_187 _ _ _  = notHappyAtAll --happyReduce_188 = happySpecReduce_2  82 happyReduction_188-happyReduction_188 _-	(HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1-	)-happyReduction_188 _ _  = notHappyAtAll --happyReduce_189 = happySpecReduce_1  82 happyReduction_189-happyReduction_189 (HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1-	)-happyReduction_189 _  = notHappyAtAll --happyReduce_190 = happySpecReduce_0  82 happyReduction_190-happyReduction_190  =  HappyAbsSyn51-		 (nilOL-	)--happyReduce_191 = happySpecReduce_2  83 happyReduction_191-happyReduction_191 (HappyAbsSyn86  happy_var_2)-	(HappyAbsSyn117  happy_var_1)-	 =  HappyAbsSyn51-		 (toOL [ sL (comb2 happy_var_1 happy_var_2) $ WarningD (Warning n (WarningTxt $ unLoc happy_var_2))-                       | n <- unLoc happy_var_1 ]-	)-happyReduction_191 _ _  = notHappyAtAll --happyReduce_192 = happySpecReduce_3  84 happyReduction_192-happyReduction_192 (HappyAbsSyn51  happy_var_3)-	_-	(HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1 `appOL` happy_var_3-	)-happyReduction_192 _ _ _  = notHappyAtAll --happyReduce_193 = happySpecReduce_2  84 happyReduction_193-happyReduction_193 _-	(HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1-	)-happyReduction_193 _ _  = notHappyAtAll --happyReduce_194 = happySpecReduce_1  84 happyReduction_194-happyReduction_194 (HappyAbsSyn51  happy_var_1)-	 =  HappyAbsSyn51-		 (happy_var_1-	)-happyReduction_194 _  = notHappyAtAll --happyReduce_195 = happySpecReduce_0  84 happyReduction_195-happyReduction_195  =  HappyAbsSyn51-		 (nilOL-	)--happyReduce_196 = happySpecReduce_2  85 happyReduction_196-happyReduction_196 (HappyAbsSyn86  happy_var_2)-	(HappyAbsSyn117  happy_var_1)-	 =  HappyAbsSyn51-		 (toOL [ sL (comb2 happy_var_1 happy_var_2) $ WarningD (Warning n (DeprecatedTxt $ unLoc happy_var_2))-                       | n <- unLoc happy_var_1 ]-	)-happyReduction_196 _ _  = notHappyAtAll --happyReduce_197 = happySpecReduce_1  86 happyReduction_197-happyReduction_197 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn86-		 (sL (getLoc happy_var_1) [getSTRING happy_var_1]-	)-happyReduction_197 _  = notHappyAtAll --happyReduce_198 = happySpecReduce_3  86 happyReduction_198-happyReduction_198 (HappyTerminal happy_var_3)-	(HappyAbsSyn87  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn86-		 (sL (comb2 happy_var_1 happy_var_3) $ fromOL (unLoc happy_var_2)-	)-happyReduction_198 _ _ _  = notHappyAtAll --happyReduce_199 = happySpecReduce_3  87 happyReduction_199-happyReduction_199 (HappyTerminal happy_var_3)-	_-	(HappyAbsSyn87  happy_var_1)-	 =  HappyAbsSyn87-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_1 `snocOL` getSTRING happy_var_3)-	)-happyReduction_199 _ _ _  = notHappyAtAll --happyReduce_200 = happySpecReduce_1  87 happyReduction_200-happyReduction_200 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn87-		 (sL (comb2 happy_var_1 happy_var_1) (unitOL (getSTRING happy_var_1))-	)-happyReduction_200 _  = notHappyAtAll --happyReduce_201 = happyReduce 4 88 happyReduction_201-happyReduction_201 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn143  happy_var_3) `HappyStk`-	(HappyAbsSyn17  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn15-		 (sL (comb2 happy_var_1 happy_var_4) (AnnD $ HsAnnotation (ValueAnnProvenance (unLoc happy_var_2)) happy_var_3)-	) `HappyStk` happyRest--happyReduce_202 = happyReduce 5 88 happyReduction_202-happyReduction_202 ((HappyTerminal happy_var_5) `HappyStk`-	(HappyAbsSyn143  happy_var_4) `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn15-		 (sL (comb2 happy_var_1 happy_var_5) (AnnD $ HsAnnotation (TypeAnnProvenance (unLoc happy_var_3)) happy_var_4)-	) `HappyStk` happyRest--happyReduce_203 = happyReduce 4 88 happyReduction_203-happyReduction_203 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn143  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn15-		 (sL (comb2 happy_var_1 happy_var_4) (AnnD $ HsAnnotation ModuleAnnProvenance happy_var_3)-	) `HappyStk` happyRest--happyReduce_204 = happyMonadReduce 4 89 happyReduction_204-happyReduction_204 ((HappyAbsSyn92  happy_var_4) `HappyStk`-	(HappyAbsSyn91  happy_var_3) `HappyStk`-	(HappyAbsSyn90  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkImport happy_var_2 happy_var_3 (unLoc happy_var_4) >>= return.sL (comb2 happy_var_1 happy_var_4))-	) (\r -> happyReturn (HappyAbsSyn15 r))--happyReduce_205 = happyMonadReduce 3 89 happyReduction_205-happyReduction_205 ((HappyAbsSyn92  happy_var_3) `HappyStk`-	(HappyAbsSyn90  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { d <- mkImport happy_var_2 PlaySafe (unLoc happy_var_3);-                        return (sL (comb2 happy_var_1 happy_var_3) d) })-	) (\r -> happyReturn (HappyAbsSyn15 r))--happyReduce_206 = happyMonadReduce 3 89 happyReduction_206-happyReduction_206 ((HappyAbsSyn92  happy_var_3) `HappyStk`-	(HappyAbsSyn90  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkExport happy_var_2 (unLoc happy_var_3) >>= return.sL (comb2 happy_var_1 happy_var_3))-	) (\r -> happyReturn (HappyAbsSyn15 r))--happyReduce_207 = happySpecReduce_1  90 happyReduction_207-happyReduction_207 _-	 =  HappyAbsSyn90-		 (StdCallConv-	)--happyReduce_208 = happySpecReduce_1  90 happyReduction_208-happyReduction_208 _-	 =  HappyAbsSyn90-		 (CCallConv-	)--happyReduce_209 = happySpecReduce_1  90 happyReduction_209-happyReduction_209 _-	 =  HappyAbsSyn90-		 (CApiConv-	)--happyReduce_210 = happySpecReduce_1  90 happyReduction_210-happyReduction_210 _-	 =  HappyAbsSyn90-		 (PrimCallConv-	)--happyReduce_211 = happySpecReduce_1  91 happyReduction_211-happyReduction_211 _-	 =  HappyAbsSyn91-		 (PlayRisky-	)--happyReduce_212 = happySpecReduce_1  91 happyReduction_212-happyReduction_212 _-	 =  HappyAbsSyn91-		 (PlaySafe-	)--happyReduce_213 = happySpecReduce_1  91 happyReduction_213-happyReduction_213 _-	 =  HappyAbsSyn91-		 (PlayInterruptible-	)--happyReduce_214 = happyReduce 4 92 happyReduction_214-happyReduction_214 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn92-		 (sL (comb2 happy_var_1 happy_var_4) (L (getLoc happy_var_1) (getSTRING happy_var_1), happy_var_2, happy_var_4)-	) `HappyStk` happyRest--happyReduce_215 = happySpecReduce_3  92 happyReduction_215-happyReduction_215 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn92-		 (sL (comb2 happy_var_1 happy_var_3) (noLoc nilFS, happy_var_1, happy_var_3)-	)-happyReduction_215 _ _ _  = notHappyAtAll --happyReduce_216 = happySpecReduce_0  93 happyReduction_216-happyReduction_216  =  HappyAbsSyn93-		 (Nothing-	)--happyReduce_217 = happySpecReduce_2  93 happyReduction_217-happyReduction_217 (HappyAbsSyn95  happy_var_2)-	_-	 =  HappyAbsSyn93-		 (Just happy_var_2-	)-happyReduction_217 _ _  = notHappyAtAll --happyReduce_218 = happySpecReduce_0  94 happyReduction_218-happyReduction_218  =  HappyAbsSyn93-		 (Nothing-	)--happyReduce_219 = happySpecReduce_2  94 happyReduction_219-happyReduction_219 (HappyAbsSyn95  happy_var_2)-	_-	 =  HappyAbsSyn93-		 (Just happy_var_2-	)-happyReduction_219 _ _  = notHappyAtAll --happyReduce_220 = happySpecReduce_1  95 happyReduction_220-happyReduction_220 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (getLoc happy_var_1) (mkImplicitHsForAllTy (noLoc []) happy_var_1)-	)-happyReduction_220 _  = notHappyAtAll --happyReduce_221 = happySpecReduce_1  96 happyReduction_221-happyReduction_221 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (getLoc happy_var_1) (mkImplicitHsForAllTy (noLoc []) happy_var_1)-	)-happyReduction_221 _  = notHappyAtAll --happyReduce_222 = happySpecReduce_3  97 happyReduction_222-happyReduction_222 (HappyAbsSyn17  happy_var_3)-	_-	(HappyAbsSyn50  happy_var_1)-	 =  HappyAbsSyn50-		 (sL (comb2 happy_var_1 happy_var_3) (happy_var_3 : unLoc happy_var_1)-	)-happyReduction_222 _ _ _  = notHappyAtAll --happyReduce_223 = happySpecReduce_1  97 happyReduction_223-happyReduction_223 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn50-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_223 _  = notHappyAtAll --happyReduce_224 = happySpecReduce_1  98 happyReduction_224-happyReduction_224 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn98-		 ([ happy_var_1 ]-	)-happyReduction_224 _  = notHappyAtAll --happyReduce_225 = happySpecReduce_3  98 happyReduction_225-happyReduction_225 (HappyAbsSyn98  happy_var_3)-	_-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn98-		 (happy_var_1 : happy_var_3-	)-happyReduction_225 _ _ _  = notHappyAtAll --happyReduce_226 = happySpecReduce_3  99 happyReduction_226-happyReduction_226 (HappyAbsSyn95  happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ mkHsOpTy happy_var_1 happy_var_2 happy_var_3-	)-happyReduction_226 _ _ _  = notHappyAtAll --happyReduce_227 = happySpecReduce_3  99 happyReduction_227-happyReduction_227 (HappyAbsSyn95  happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ mkHsOpTy happy_var_1 happy_var_2 happy_var_3-	)-happyReduction_227 _ _ _  = notHappyAtAll --happyReduce_228 = happySpecReduce_1  100 happyReduction_228-happyReduction_228 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn100-		 (sL (getLoc happy_var_1) HsStrict-	)-happyReduction_228 _  = notHappyAtAll --happyReduce_229 = happySpecReduce_3  100 happyReduction_229-happyReduction_229 (HappyTerminal happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn100-		 (sL (comb2 happy_var_1 happy_var_3) HsUnpack-	)-happyReduction_229 _ _ _  = notHappyAtAll --happyReduce_230 = happySpecReduce_3  100 happyReduction_230-happyReduction_230 (HappyTerminal happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn100-		 (sL (comb2 happy_var_1 happy_var_3) HsNoUnpack-	)-happyReduction_230 _ _ _  = notHappyAtAll --happyReduce_231 = happyReduce 4 101 happyReduction_231-happyReduction_231 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn112  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ mkExplicitHsForAllTy happy_var_2 (noLoc []) happy_var_4-	) `HappyStk` happyRest--happyReduce_232 = happySpecReduce_3  101 happyReduction_232-happyReduction_232 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn103  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ mkImplicitHsForAllTy   happy_var_1 happy_var_3-	)-happyReduction_232 _ _ _  = notHappyAtAll --happyReduce_233 = happySpecReduce_3  101 happyReduction_233-happyReduction_233 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn192  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) (HsIParamTy (unLoc happy_var_1) happy_var_3)-	)-happyReduction_233 _ _ _  = notHappyAtAll --happyReduce_234 = happySpecReduce_1  101 happyReduction_234-happyReduction_234 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (happy_var_1-	)-happyReduction_234 _  = notHappyAtAll --happyReduce_235 = happyReduce 4 102 happyReduction_235-happyReduction_235 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn112  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ mkExplicitHsForAllTy happy_var_2 (noLoc []) happy_var_4-	) `HappyStk` happyRest--happyReduce_236 = happySpecReduce_3  102 happyReduction_236-happyReduction_236 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn103  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ mkImplicitHsForAllTy   happy_var_1 happy_var_3-	)-happyReduction_236 _ _ _  = notHappyAtAll --happyReduce_237 = happySpecReduce_3  102 happyReduction_237-happyReduction_237 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn192  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) (HsIParamTy (unLoc happy_var_1) happy_var_3)-	)-happyReduction_237 _ _ _  = notHappyAtAll --happyReduce_238 = happySpecReduce_1  102 happyReduction_238-happyReduction_238 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (happy_var_1-	)-happyReduction_238 _  = notHappyAtAll --happyReduce_239 = happyMonadReduce 3 103 happyReduction_239-happyReduction_239 ((HappyAbsSyn95  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkContext-                                             (sL (comb2 happy_var_1 happy_var_3) $ HsEqTy happy_var_1 happy_var_3))-	) (\r -> happyReturn (HappyAbsSyn103 r))--happyReduce_240 = happyMonadReduce 1 103 happyReduction_240-happyReduction_240 ((HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkContext happy_var_1)-	) (\r -> happyReturn (HappyAbsSyn103 r))--happyReduce_241 = happySpecReduce_1  104 happyReduction_241-happyReduction_241 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (happy_var_1-	)-happyReduction_241 _  = notHappyAtAll --happyReduce_242 = happySpecReduce_3  104 happyReduction_242-happyReduction_242 (HappyAbsSyn95  happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ mkHsOpTy happy_var_1 happy_var_2 happy_var_3-	)-happyReduction_242 _ _ _  = notHappyAtAll --happyReduce_243 = happySpecReduce_3  104 happyReduction_243-happyReduction_243 (HappyAbsSyn95  happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ mkHsOpTy happy_var_1 happy_var_2 happy_var_3-	)-happyReduction_243 _ _ _  = notHappyAtAll --happyReduce_244 = happySpecReduce_3  104 happyReduction_244-happyReduction_244 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ HsFunTy happy_var_1 happy_var_3-	)-happyReduction_244 _ _ _  = notHappyAtAll --happyReduce_245 = happySpecReduce_3  104 happyReduction_245-happyReduction_245 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ HsEqTy happy_var_1 happy_var_3-	)-happyReduction_245 _ _ _  = notHappyAtAll --happyReduce_246 = happyReduce 4 104 happyReduction_246-happyReduction_246 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ mkHsOpTy happy_var_1 happy_var_3 happy_var_4-	) `HappyStk` happyRest--happyReduce_247 = happyReduce 4 104 happyReduction_247-happyReduction_247 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ mkHsOpTy happy_var_1 happy_var_3 happy_var_4-	) `HappyStk` happyRest--happyReduce_248 = happySpecReduce_1  105 happyReduction_248-happyReduction_248 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (happy_var_1-	)-happyReduction_248 _  = notHappyAtAll --happyReduce_249 = happySpecReduce_2  105 happyReduction_249-happyReduction_249 (HappyAbsSyn237  happy_var_2)-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_2) $ HsDocTy happy_var_1 happy_var_2-	)-happyReduction_249 _ _  = notHappyAtAll --happyReduce_250 = happySpecReduce_3  105 happyReduction_250-happyReduction_250 (HappyAbsSyn95  happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ mkHsOpTy happy_var_1 happy_var_2 happy_var_3-	)-happyReduction_250 _ _ _  = notHappyAtAll --happyReduce_251 = happyReduce 4 105 happyReduction_251-happyReduction_251 ((HappyAbsSyn237  happy_var_4) `HappyStk`-	(HappyAbsSyn95  happy_var_3) `HappyStk`-	(HappyAbsSyn17  happy_var_2) `HappyStk`-	(HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ HsDocTy (L (comb3 happy_var_1 happy_var_2 happy_var_3) (mkHsOpTy happy_var_1 happy_var_2 happy_var_3)) happy_var_4-	) `HappyStk` happyRest--happyReduce_252 = happySpecReduce_3  105 happyReduction_252-happyReduction_252 (HappyAbsSyn95  happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ mkHsOpTy happy_var_1 happy_var_2 happy_var_3-	)-happyReduction_252 _ _ _  = notHappyAtAll --happyReduce_253 = happyReduce 4 105 happyReduction_253-happyReduction_253 ((HappyAbsSyn237  happy_var_4) `HappyStk`-	(HappyAbsSyn95  happy_var_3) `HappyStk`-	(HappyAbsSyn17  happy_var_2) `HappyStk`-	(HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ HsDocTy (L (comb3 happy_var_1 happy_var_2 happy_var_3) (mkHsOpTy happy_var_1 happy_var_2 happy_var_3)) happy_var_4-	) `HappyStk` happyRest--happyReduce_254 = happySpecReduce_3  105 happyReduction_254-happyReduction_254 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ HsFunTy happy_var_1 happy_var_3-	)-happyReduction_254 _ _ _  = notHappyAtAll --happyReduce_255 = happyReduce 4 105 happyReduction_255-happyReduction_255 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn237  happy_var_2) `HappyStk`-	(HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ HsFunTy (L (comb2 happy_var_1 happy_var_2) (HsDocTy happy_var_1 happy_var_2)) happy_var_4-	) `HappyStk` happyRest--happyReduce_256 = happySpecReduce_3  105 happyReduction_256-happyReduction_256 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ HsEqTy happy_var_1 happy_var_3-	)-happyReduction_256 _ _ _  = notHappyAtAll --happyReduce_257 = happyReduce 4 105 happyReduction_257-happyReduction_257 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ mkHsOpTy happy_var_1 happy_var_3 happy_var_4-	) `HappyStk` happyRest--happyReduce_258 = happyReduce 4 105 happyReduction_258-happyReduction_258 ((HappyAbsSyn95  happy_var_4) `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ mkHsOpTy happy_var_1 happy_var_3 happy_var_4-	) `HappyStk` happyRest--happyReduce_259 = happySpecReduce_2  106 happyReduction_259-happyReduction_259 (HappyAbsSyn95  happy_var_2)-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_2) $ HsAppTy happy_var_1 happy_var_2-	)-happyReduction_259 _ _  = notHappyAtAll --happyReduce_260 = happySpecReduce_1  106 happyReduction_260-happyReduction_260 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (happy_var_1-	)-happyReduction_260 _  = notHappyAtAll --happyReduce_261 = happySpecReduce_1  107 happyReduction_261-happyReduction_261 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (getLoc happy_var_1) (HsTyVar (unLoc happy_var_1))-	)-happyReduction_261 _  = notHappyAtAll --happyReduce_262 = happySpecReduce_1  107 happyReduction_262-happyReduction_262 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (getLoc happy_var_1) (HsTyVar (unLoc happy_var_1))-	)-happyReduction_262 _  = notHappyAtAll --happyReduce_263 = happySpecReduce_2  107 happyReduction_263-happyReduction_263 (HappyAbsSyn95  happy_var_2)-	(HappyAbsSyn100  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_2) (HsBangTy (unLoc happy_var_1) happy_var_2)-	)-happyReduction_263 _ _  = notHappyAtAll --happyReduce_264 = happyMonadReduce 3 107 happyReduction_264-happyReduction_264 ((HappyTerminal happy_var_3) `HappyStk`-	(HappyAbsSyn131  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkRecordSyntax (sL (comb2 happy_var_1 happy_var_3) $ HsRecTy happy_var_2))-	) (\r -> happyReturn (HappyAbsSyn95 r))--happyReduce_265 = happySpecReduce_2  107 happyReduction_265-happyReduction_265 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_2) $ HsTupleTy HsBoxedOrConstraintTuple []-	)-happyReduction_265 _ _  = notHappyAtAll --happyReduce_266 = happyReduce 5 107 happyReduction_266-happyReduction_266 ((HappyTerminal happy_var_5) `HappyStk`-	(HappyAbsSyn98  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_5) $ HsTupleTy HsBoxedOrConstraintTuple (happy_var_2:happy_var_4)-	) `HappyStk` happyRest--happyReduce_267 = happySpecReduce_2  107 happyReduction_267-happyReduction_267 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_2) $ HsTupleTy HsUnboxedTuple           []-	)-happyReduction_267 _ _  = notHappyAtAll --happyReduce_268 = happySpecReduce_3  107 happyReduction_268-happyReduction_268 (HappyTerminal happy_var_3)-	(HappyAbsSyn98  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ HsTupleTy HsUnboxedTuple           happy_var_2-	)-happyReduction_268 _ _ _  = notHappyAtAll --happyReduce_269 = happySpecReduce_3  107 happyReduction_269-happyReduction_269 (HappyTerminal happy_var_3)-	(HappyAbsSyn95  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ HsListTy  happy_var_2-	)-happyReduction_269 _ _ _  = notHappyAtAll --happyReduce_270 = happySpecReduce_3  107 happyReduction_270-happyReduction_270 (HappyTerminal happy_var_3)-	(HappyAbsSyn95  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ HsPArrTy  happy_var_2-	)-happyReduction_270 _ _ _  = notHappyAtAll --happyReduce_271 = happySpecReduce_3  107 happyReduction_271-happyReduction_271 (HappyTerminal happy_var_3)-	(HappyAbsSyn95  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ HsParTy   happy_var_2-	)-happyReduction_271 _ _ _  = notHappyAtAll --happyReduce_272 = happyReduce 5 107 happyReduction_272-happyReduction_272 ((HappyTerminal happy_var_5) `HappyStk`-	(HappyAbsSyn118  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_5) $ HsKindSig happy_var_2 happy_var_4-	) `HappyStk` happyRest--happyReduce_273 = happySpecReduce_1  107 happyReduction_273-happyReduction_273 (HappyAbsSyn142  happy_var_1)-	 =  HappyAbsSyn95-		 (sL (getLoc happy_var_1) (HsQuasiQuoteTy (unLoc happy_var_1))-	)-happyReduction_273 _  = notHappyAtAll --happyReduce_274 = happySpecReduce_3  107 happyReduction_274-happyReduction_274 (HappyTerminal happy_var_3)-	(HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ mkHsSpliceTy happy_var_2-	)-happyReduction_274 _ _ _  = notHappyAtAll --happyReduce_275 = happySpecReduce_1  107 happyReduction_275-happyReduction_275 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_1) $ mkHsSpliceTy $ sL (getLoc happy_var_1) $ HsVar $-                                           mkUnqual varName (getTH_ID_SPLICE happy_var_1)-	)-happyReduction_275 _  = notHappyAtAll --happyReduce_276 = happySpecReduce_2  107 happyReduction_276-happyReduction_276 (HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_2) $ HsTyVar $ unLoc happy_var_2-	)-happyReduction_276 _ _  = notHappyAtAll --happyReduce_277 = happySpecReduce_3  107 happyReduction_277-happyReduction_277 (HappyTerminal happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_3) $ HsTyVar $ getRdrName unitDataCon-	)-happyReduction_277 _ _ _  = notHappyAtAll --happyReduce_278 = happyReduce 6 107 happyReduction_278-happyReduction_278 ((HappyTerminal happy_var_6) `HappyStk`-	(HappyAbsSyn98  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_6) $ HsExplicitTupleTy [] (happy_var_3 : happy_var_5)-	) `HappyStk` happyRest--happyReduce_279 = happyReduce 4 107 happyReduction_279-happyReduction_279 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn98  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_4) $ HsExplicitListTy placeHolderKind happy_var_3-	) `HappyStk` happyRest--happyReduce_280 = happyReduce 5 107 happyReduction_280-happyReduction_280 ((HappyTerminal happy_var_5) `HappyStk`-	(HappyAbsSyn98  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn95  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn95-		 (sL (comb2 happy_var_1 happy_var_5) $ HsExplicitListTy placeHolderKind (happy_var_2 : happy_var_4)-	) `HappyStk` happyRest--happyReduce_281 = happyMonadReduce 1 107 happyReduction_281-happyReduction_281 ((HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkTyLit $ sL (comb2 happy_var_1 happy_var_1) $ HsNumTy $ getINTEGER happy_var_1)-	) (\r -> happyReturn (HappyAbsSyn95 r))--happyReduce_282 = happyMonadReduce 1 107 happyReduction_282-happyReduction_282 ((HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( mkTyLit $ sL (comb2 happy_var_1 happy_var_1) $ HsStrTy $ getSTRING  happy_var_1)-	) (\r -> happyReturn (HappyAbsSyn95 r))--happyReduce_283 = happySpecReduce_1  108 happyReduction_283-happyReduction_283 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn95-		 (happy_var_1-	)-happyReduction_283 _  = notHappyAtAll --happyReduce_284 = happySpecReduce_1  109 happyReduction_284-happyReduction_284 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn98-		 ([happy_var_1]-	)-happyReduction_284 _  = notHappyAtAll --happyReduce_285 = happySpecReduce_3  109 happyReduction_285-happyReduction_285 (HappyAbsSyn98  happy_var_3)-	_-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn98-		 (happy_var_1 : happy_var_3-	)-happyReduction_285 _ _ _  = notHappyAtAll --happyReduce_286 = happySpecReduce_1  110 happyReduction_286-happyReduction_286 (HappyAbsSyn98  happy_var_1)-	 =  HappyAbsSyn98-		 (happy_var_1-	)-happyReduction_286 _  = notHappyAtAll --happyReduce_287 = happySpecReduce_0  110 happyReduction_287-happyReduction_287  =  HappyAbsSyn98-		 ([]-	)--happyReduce_288 = happySpecReduce_1  111 happyReduction_288-happyReduction_288 (HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn98-		 ([happy_var_1]-	)-happyReduction_288 _  = notHappyAtAll --happyReduce_289 = happySpecReduce_3  111 happyReduction_289-happyReduction_289 (HappyAbsSyn98  happy_var_3)-	_-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn98-		 (happy_var_1 : happy_var_3-	)-happyReduction_289 _ _ _  = notHappyAtAll --happyReduce_290 = happySpecReduce_2  112 happyReduction_290-happyReduction_290 (HappyAbsSyn112  happy_var_2)-	(HappyAbsSyn113  happy_var_1)-	 =  HappyAbsSyn112-		 (happy_var_1 : happy_var_2-	)-happyReduction_290 _ _  = notHappyAtAll --happyReduce_291 = happySpecReduce_0  112 happyReduction_291-happyReduction_291  =  HappyAbsSyn112-		 ([]-	)--happyReduce_292 = happySpecReduce_1  113 happyReduction_292-happyReduction_292 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn113-		 (sL (getLoc happy_var_1) (UserTyVar (unLoc happy_var_1))-	)-happyReduction_292 _  = notHappyAtAll --happyReduce_293 = happyReduce 5 113 happyReduction_293-happyReduction_293 ((HappyTerminal happy_var_5) `HappyStk`-	(HappyAbsSyn118  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn113-		 (sL (comb2 happy_var_1 happy_var_5) (KindedTyVar (unLoc happy_var_2) happy_var_4)-	) `HappyStk` happyRest--happyReduce_294 = happySpecReduce_0  114 happyReduction_294-happyReduction_294  =  HappyAbsSyn114-		 (noLoc []-	)--happyReduce_295 = happySpecReduce_2  114 happyReduction_295-happyReduction_295 (HappyAbsSyn114  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn114-		 (sL (comb2 happy_var_1 happy_var_2) (reverse (unLoc happy_var_2))-	)-happyReduction_295 _ _  = notHappyAtAll --happyReduce_296 = happySpecReduce_3  115 happyReduction_296-happyReduction_296 (HappyAbsSyn116  happy_var_3)-	_-	(HappyAbsSyn114  happy_var_1)-	 =  HappyAbsSyn114-		 (sL (comb2 happy_var_1 happy_var_3) (happy_var_3 : unLoc happy_var_1)-	)-happyReduction_296 _ _ _  = notHappyAtAll --happyReduce_297 = happySpecReduce_1  115 happyReduction_297-happyReduction_297 (HappyAbsSyn116  happy_var_1)-	 =  HappyAbsSyn114-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_297 _  = notHappyAtAll --happyReduce_298 = happySpecReduce_3  116 happyReduction_298-happyReduction_298 (HappyAbsSyn117  happy_var_3)-	(HappyTerminal happy_var_2)-	(HappyAbsSyn117  happy_var_1)-	 =  HappyAbsSyn116-		 (L (comb3 happy_var_1 happy_var_2 happy_var_3)-                                           (reverse (unLoc happy_var_1), reverse (unLoc happy_var_3))-	)-happyReduction_298 _ _ _  = notHappyAtAll --happyReduce_299 = happySpecReduce_0  117 happyReduction_299-happyReduction_299  =  HappyAbsSyn117-		 (noLoc []-	)--happyReduce_300 = happySpecReduce_2  117 happyReduction_300-happyReduction_300 (HappyAbsSyn17  happy_var_2)-	(HappyAbsSyn117  happy_var_1)-	 =  HappyAbsSyn117-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_2 : unLoc happy_var_1)-	)-happyReduction_300 _ _  = notHappyAtAll --happyReduce_301 = happySpecReduce_1  118 happyReduction_301-happyReduction_301 (HappyAbsSyn118  happy_var_1)-	 =  HappyAbsSyn118-		 (happy_var_1-	)-happyReduction_301 _  = notHappyAtAll --happyReduce_302 = happySpecReduce_3  118 happyReduction_302-happyReduction_302 (HappyAbsSyn118  happy_var_3)-	_-	(HappyAbsSyn118  happy_var_1)-	 =  HappyAbsSyn118-		 (sL (comb2 happy_var_1 happy_var_3) $ HsFunTy happy_var_1 happy_var_3-	)-happyReduction_302 _ _ _  = notHappyAtAll --happyReduce_303 = happySpecReduce_1  119 happyReduction_303-happyReduction_303 (HappyAbsSyn118  happy_var_1)-	 =  HappyAbsSyn118-		 (happy_var_1-	)-happyReduction_303 _  = notHappyAtAll --happyReduce_304 = happySpecReduce_2  119 happyReduction_304-happyReduction_304 (HappyAbsSyn118  happy_var_2)-	(HappyAbsSyn118  happy_var_1)-	 =  HappyAbsSyn118-		 (sL (comb2 happy_var_1 happy_var_2) $ HsAppTy happy_var_1 happy_var_2-	)-happyReduction_304 _ _  = notHappyAtAll --happyReduce_305 = happySpecReduce_1  120 happyReduction_305-happyReduction_305 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn118-		 (sL (getLoc happy_var_1) $ HsTyVar (nameRdrName liftedTypeKindTyConName)-	)-happyReduction_305 _  = notHappyAtAll --happyReduce_306 = happySpecReduce_3  120 happyReduction_306-happyReduction_306 (HappyTerminal happy_var_3)-	(HappyAbsSyn118  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn118-		 (sL (comb2 happy_var_1 happy_var_3) $ HsParTy happy_var_2-	)-happyReduction_306 _ _ _  = notHappyAtAll --happyReduce_307 = happySpecReduce_1  120 happyReduction_307-happyReduction_307 (HappyAbsSyn118  happy_var_1)-	 =  HappyAbsSyn118-		 (happy_var_1-	)-happyReduction_307 _  = notHappyAtAll --happyReduce_308 = happySpecReduce_1  120 happyReduction_308-happyReduction_308 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn118-		 (sL (getLoc happy_var_1) $ HsTyVar (unLoc happy_var_1)-	)-happyReduction_308 _  = notHappyAtAll --happyReduce_309 = happySpecReduce_1  121 happyReduction_309-happyReduction_309 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn118-		 (sL (getLoc happy_var_1) $ HsTyVar $ unLoc happy_var_1-	)-happyReduction_309 _  = notHappyAtAll --happyReduce_310 = happySpecReduce_2  121 happyReduction_310-happyReduction_310 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn118-		 (sL (comb2 happy_var_1 happy_var_2) $ HsTyVar $ getRdrName unitTyCon-	)-happyReduction_310 _ _  = notHappyAtAll --happyReduce_311 = happyReduce 5 121 happyReduction_311-happyReduction_311 ((HappyTerminal happy_var_5) `HappyStk`-	(HappyAbsSyn122  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn118  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn118-		 (sL (comb2 happy_var_1 happy_var_5) $ HsTupleTy HsBoxedTuple (happy_var_2 : happy_var_4)-	) `HappyStk` happyRest--happyReduce_312 = happySpecReduce_3  121 happyReduction_312-happyReduction_312 (HappyTerminal happy_var_3)-	(HappyAbsSyn118  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn118-		 (sL (comb2 happy_var_1 happy_var_3) $ HsListTy happy_var_2-	)-happyReduction_312 _ _ _  = notHappyAtAll --happyReduce_313 = happySpecReduce_1  122 happyReduction_313-happyReduction_313 (HappyAbsSyn118  happy_var_1)-	 =  HappyAbsSyn122-		 ([happy_var_1]-	)-happyReduction_313 _  = notHappyAtAll --happyReduce_314 = happySpecReduce_3  122 happyReduction_314-happyReduction_314 (HappyAbsSyn122  happy_var_3)-	_-	(HappyAbsSyn118  happy_var_1)-	 =  HappyAbsSyn122-		 (happy_var_1 : happy_var_3-	)-happyReduction_314 _ _ _  = notHappyAtAll --happyReduce_315 = happyReduce 4 123 happyReduction_315-happyReduction_315 (_ `HappyStk`-	(HappyAbsSyn123  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn123-		 (L (comb2 happy_var_1 happy_var_3) (unLoc happy_var_3)-	) `HappyStk` happyRest--happyReduce_316 = happyReduce 4 123 happyReduction_316-happyReduction_316 (_ `HappyStk`-	(HappyAbsSyn123  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn123-		 (L (comb2 happy_var_1 happy_var_3) (unLoc happy_var_3)-	) `HappyStk` happyRest--happyReduce_317 = happySpecReduce_0  123 happyReduction_317-happyReduction_317  =  HappyAbsSyn123-		 (noLoc []-	)--happyReduce_318 = happySpecReduce_3  124 happyReduction_318-happyReduction_318 (HappyAbsSyn123  happy_var_3)-	_-	(HappyAbsSyn125  happy_var_1)-	 =  HappyAbsSyn123-		 (L (comb2 (head happy_var_1) happy_var_3) (happy_var_1 ++ unLoc happy_var_3)-	)-happyReduction_318 _ _ _  = notHappyAtAll --happyReduce_319 = happySpecReduce_1  124 happyReduction_319-happyReduction_319 (HappyAbsSyn125  happy_var_1)-	 =  HappyAbsSyn123-		 (L (getLoc (head happy_var_1)) happy_var_1-	)-happyReduction_319 _  = notHappyAtAll --happyReduce_320 = happySpecReduce_0  124 happyReduction_320-happyReduction_320  =  HappyAbsSyn123-		 (noLoc []-	)--happyReduce_321 = happySpecReduce_3  125 happyReduction_321-happyReduction_321 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn50  happy_var_1)-	 =  HappyAbsSyn125-		 (map (sL (comb2 happy_var_1 happy_var_3)) (mkGadtDecl (unLoc happy_var_1) happy_var_3)-	)-happyReduction_321 _ _ _  = notHappyAtAll --happyReduce_322 = happyMonadReduce 6 125 happyReduction_322-happyReduction_322 ((HappyAbsSyn95  happy_var_6) `HappyStk`-	_ `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn131  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { cd <- mkDeprecatedGadtRecordDecl (comb2 happy_var_1 happy_var_6) happy_var_1 happy_var_3 happy_var_6-                      ; cd' <- checkRecordSyntax cd-                      ; return [cd'] })-	) (\r -> happyReturn (HappyAbsSyn125 r))--happyReduce_323 = happySpecReduce_3  126 happyReduction_323-happyReduction_323 (HappyAbsSyn123  happy_var_3)-	(HappyTerminal happy_var_2)-	(HappyAbsSyn19  happy_var_1)-	 =  HappyAbsSyn123-		 (L (comb2 happy_var_2 happy_var_3) (addConDocs (unLoc happy_var_3) happy_var_1)-	)-happyReduction_323 _ _ _  = notHappyAtAll --happyReduce_324 = happyReduce 5 127 happyReduction_324-happyReduction_324 ((HappyAbsSyn128  happy_var_5) `HappyStk`-	(HappyAbsSyn19  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn19  happy_var_2) `HappyStk`-	(HappyAbsSyn123  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn123-		 (sL (comb2 happy_var_1 happy_var_5) (addConDoc happy_var_5 happy_var_2 : addConDocFirst (unLoc happy_var_1) happy_var_4)-	) `HappyStk` happyRest--happyReduce_325 = happySpecReduce_1  127 happyReduction_325-happyReduction_325 (HappyAbsSyn128  happy_var_1)-	 =  HappyAbsSyn123-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_325 _  = notHappyAtAll --happyReduce_326 = happyReduce 6 128 happyReduction_326-happyReduction_326 ((HappyAbsSyn19  happy_var_6) `HappyStk`-	(HappyAbsSyn130  happy_var_5) `HappyStk`-	(HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn103  happy_var_3) `HappyStk`-	(HappyAbsSyn129  happy_var_2) `HappyStk`-	(HappyAbsSyn19  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn128-		 (let (con,details) = unLoc happy_var_5 in -                  addConDoc (L (comb4 happy_var_2 happy_var_3 happy_var_4 happy_var_5) (mkSimpleConDecl con (unLoc happy_var_2) happy_var_3 details))-                            (happy_var_1 `mplus` happy_var_6)-	) `HappyStk` happyRest--happyReduce_327 = happyReduce 4 128 happyReduction_327-happyReduction_327 ((HappyAbsSyn19  happy_var_4) `HappyStk`-	(HappyAbsSyn130  happy_var_3) `HappyStk`-	(HappyAbsSyn129  happy_var_2) `HappyStk`-	(HappyAbsSyn19  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn128-		 (let (con,details) = unLoc happy_var_3 in -                  addConDoc (L (comb2 happy_var_2 happy_var_3) (mkSimpleConDecl con (unLoc happy_var_2) (noLoc []) details))-                            (happy_var_1 `mplus` happy_var_4)-	) `HappyStk` happyRest--happyReduce_328 = happySpecReduce_3  129 happyReduction_328-happyReduction_328 (HappyTerminal happy_var_3)-	(HappyAbsSyn112  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn129-		 (sL (comb2 happy_var_1 happy_var_3) happy_var_2-	)-happyReduction_328 _ _ _  = notHappyAtAll --happyReduce_329 = happySpecReduce_0  129 happyReduction_329-happyReduction_329  =  HappyAbsSyn129-		 (noLoc []-	)--happyReduce_330 = happyMonadReduce 1 130 happyReduction_330-happyReduction_330 ((HappyAbsSyn95  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( splitCon happy_var_1 >>= return.sL (comb2 happy_var_1 happy_var_1))-	) (\r -> happyReturn (HappyAbsSyn130 r))--happyReduce_331 = happySpecReduce_3  130 happyReduction_331-happyReduction_331 (HappyAbsSyn95  happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyAbsSyn95  happy_var_1)-	 =  HappyAbsSyn130-		 (sL (comb2 happy_var_1 happy_var_3) (happy_var_2, InfixCon happy_var_1 happy_var_3)-	)-happyReduction_331 _ _ _  = notHappyAtAll --happyReduce_332 = happySpecReduce_0  131 happyReduction_332-happyReduction_332  =  HappyAbsSyn131-		 ([]-	)--happyReduce_333 = happySpecReduce_1  131 happyReduction_333-happyReduction_333 (HappyAbsSyn131  happy_var_1)-	 =  HappyAbsSyn131-		 (happy_var_1-	)-happyReduction_333 _  = notHappyAtAll --happyReduce_334 = happyReduce 5 132 happyReduction_334-happyReduction_334 ((HappyAbsSyn131  happy_var_5) `HappyStk`-	(HappyAbsSyn19  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn19  happy_var_2) `HappyStk`-	(HappyAbsSyn131  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn131-		 ([ addFieldDoc f happy_var_4 | f <- happy_var_1 ] ++ addFieldDocs happy_var_5 happy_var_2-	) `HappyStk` happyRest--happyReduce_335 = happySpecReduce_1  132 happyReduction_335-happyReduction_335 (HappyAbsSyn131  happy_var_1)-	 =  HappyAbsSyn131-		 (happy_var_1-	)-happyReduction_335 _  = notHappyAtAll --happyReduce_336 = happyReduce 5 133 happyReduction_336-happyReduction_336 ((HappyAbsSyn19  happy_var_5) `HappyStk`-	(HappyAbsSyn95  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn50  happy_var_2) `HappyStk`-	(HappyAbsSyn19  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn131-		 ([ ConDeclField fld happy_var_4 (happy_var_1 `mplus` happy_var_5) -                                                                 | fld <- reverse (unLoc happy_var_2) ]-	) `HappyStk` happyRest--happyReduce_337 = happySpecReduce_0  134 happyReduction_337-happyReduction_337  =  HappyAbsSyn134-		 (noLoc Nothing-	)--happyReduce_338 = happySpecReduce_2  134 happyReduction_338-happyReduction_338 (HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn134-		 (let { L loc tv = happy_var_2 }-                                                  in sL (comb2 happy_var_1 happy_var_2) (Just [L loc (HsTyVar tv)])-	)-happyReduction_338 _ _  = notHappyAtAll --happyReduce_339 = happySpecReduce_3  134 happyReduction_339-happyReduction_339 (HappyTerminal happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn134-		 (sL (comb2 happy_var_1 happy_var_3) (Just [])-	)-happyReduction_339 _ _ _  = notHappyAtAll --happyReduce_340 = happyReduce 4 134 happyReduction_340-happyReduction_340 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn98  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn134-		 (sL (comb2 happy_var_1 happy_var_4) (Just happy_var_3)-	) `HappyStk` happyRest--happyReduce_341 = happySpecReduce_1  135 happyReduction_341-happyReduction_341 (HappyAbsSyn136  happy_var_1)-	 =  HappyAbsSyn15-		 (sL (getLoc happy_var_1) (DocD (unLoc happy_var_1))-	)-happyReduction_341 _  = notHappyAtAll --happyReduce_342 = happySpecReduce_1  136 happyReduction_342-happyReduction_342 (HappyAbsSyn237  happy_var_1)-	 =  HappyAbsSyn136-		 (sL (getLoc happy_var_1) (DocCommentNext (unLoc happy_var_1))-	)-happyReduction_342 _  = notHappyAtAll --happyReduce_343 = happySpecReduce_1  136 happyReduction_343-happyReduction_343 (HappyAbsSyn237  happy_var_1)-	 =  HappyAbsSyn136-		 (sL (getLoc happy_var_1) (DocCommentPrev (unLoc happy_var_1))-	)-happyReduction_343 _  = notHappyAtAll --happyReduce_344 = happySpecReduce_1  136 happyReduction_344-happyReduction_344 (HappyAbsSyn239  happy_var_1)-	 =  HappyAbsSyn136-		 (sL (getLoc happy_var_1) (case (unLoc happy_var_1) of (n, doc) -> DocCommentNamed n doc)-	)-happyReduction_344 _  = notHappyAtAll --happyReduce_345 = happySpecReduce_1  136 happyReduction_345-happyReduction_345 (HappyAbsSyn240  happy_var_1)-	 =  HappyAbsSyn136-		 (sL (getLoc happy_var_1) (case (unLoc happy_var_1) of (n, doc) -> DocGroup n doc)-	)-happyReduction_345 _  = notHappyAtAll --happyReduce_346 = happySpecReduce_1  137 happyReduction_346-happyReduction_346 (HappyAbsSyn63  happy_var_1)-	 =  HappyAbsSyn63-		 (happy_var_1-	)-happyReduction_346 _  = notHappyAtAll --happyReduce_347 = happyMonadReduce 3 137 happyReduction_347-happyReduction_347 ((HappyAbsSyn138  happy_var_3) `HappyStk`-	(HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { let { e = sL (comb2 happy_var_1 happy_var_3) (SectionR (sL (comb2 happy_var_1 happy_var_3) (HsVar bang_RDR)) happy_var_2) };-                                        pat <- checkPattern e;-                                        return $ sL (comb2 happy_var_1 happy_var_3) $ unitOL $ sL (comb2 happy_var_1 happy_var_3) $ ValD $-                                               PatBind pat (unLoc happy_var_3)-                                                       placeHolderType placeHolderNames (Nothing,[]) })-	) (\r -> happyReturn (HappyAbsSyn63 r))--happyReduce_348 = happyMonadReduce 3 137 happyReduction_348-happyReduction_348 ((HappyAbsSyn138  happy_var_3) `HappyStk`-	(HappyAbsSyn93  happy_var_2) `HappyStk`-	(HappyAbsSyn143  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { r <- checkValDef happy_var_1 happy_var_2 happy_var_3;-                                        let { l = comb2 happy_var_1 happy_var_3 };-                                        return $! (sL l (unitOL $! (sL l $ ValD r))) })-	) (\r -> happyReturn (HappyAbsSyn63 r))--happyReduce_349 = happySpecReduce_1  137 happyReduction_349-happyReduction_349 (HappyAbsSyn15  happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_1) $ unitOL happy_var_1-	)-happyReduction_349 _  = notHappyAtAll --happyReduce_350 = happySpecReduce_3  138 happyReduction_350-happyReduction_350 (HappyAbsSyn73  happy_var_3)-	(HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn138-		 (sL (comb3 happy_var_1 happy_var_2 happy_var_3) $ GRHSs (unguardedRHS happy_var_2) (unLoc happy_var_3)-	)-happyReduction_350 _ _ _  = notHappyAtAll --happyReduce_351 = happySpecReduce_2  138 happyReduction_351-happyReduction_351 (HappyAbsSyn73  happy_var_2)-	(HappyAbsSyn139  happy_var_1)-	 =  HappyAbsSyn138-		 (sL (comb2 happy_var_1 happy_var_2) $ GRHSs (reverse (unLoc happy_var_1)) (unLoc happy_var_2)-	)-happyReduction_351 _ _  = notHappyAtAll --happyReduce_352 = happySpecReduce_2  139 happyReduction_352-happyReduction_352 (HappyAbsSyn140  happy_var_2)-	(HappyAbsSyn139  happy_var_1)-	 =  HappyAbsSyn139-		 (sL (comb2 happy_var_1 happy_var_2) (happy_var_2 : unLoc happy_var_1)-	)-happyReduction_352 _ _  = notHappyAtAll --happyReduce_353 = happySpecReduce_1  139 happyReduction_353-happyReduction_353 (HappyAbsSyn140  happy_var_1)-	 =  HappyAbsSyn139-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_353 _  = notHappyAtAll --happyReduce_354 = happyReduce 4 140 happyReduction_354-happyReduction_354 ((HappyAbsSyn143  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn163  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn140-		 (sL (comb2 happy_var_1 happy_var_4) $ GRHS (unLoc happy_var_2) happy_var_4-	) `HappyStk` happyRest--happyReduce_355 = happyMonadReduce 3 141 happyReduction_355-happyReduction_355 ((HappyAbsSyn95  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do s <- checkValSig happy_var_1 happy_var_3 ; return (sL (comb2 happy_var_1 happy_var_3) $ unitOL (sL (comb2 happy_var_1 happy_var_3) $ SigD s)))-	) (\r -> happyReturn (HappyAbsSyn63 r))--happyReduce_356 = happyReduce 5 141 happyReduction_356-happyReduction_356 ((HappyAbsSyn95  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn50  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_5) $ toOL [ sL (comb2 happy_var_1 happy_var_5) $ SigD (TypeSig (happy_var_1 : unLoc happy_var_3) happy_var_5) ]-	) `HappyStk` happyRest--happyReduce_357 = happySpecReduce_3  141 happyReduction_357-happyReduction_357 (HappyAbsSyn50  happy_var_3)-	(HappyAbsSyn48  happy_var_2)-	(HappyAbsSyn49  happy_var_1)-	 =  HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_3) $ toOL [ sL (comb2 happy_var_1 happy_var_3) $ SigD (FixSig (FixitySig n (Fixity happy_var_2 (unLoc happy_var_1))))-                                             | n <- unLoc happy_var_3 ]-	)-happyReduction_357 _ _ _  = notHappyAtAll --happyReduce_358 = happyReduce 4 141 happyReduction_358-happyReduction_358 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	(HappyAbsSyn77  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_4) $ unitOL (sL (comb2 happy_var_1 happy_var_4) $ SigD (InlineSig happy_var_3 (mkInlinePragma (getINLINE happy_var_1) happy_var_2)))-	) `HappyStk` happyRest--happyReduce_359 = happyReduce 6 141 happyReduction_359-happyReduction_359 ((HappyTerminal happy_var_6) `HappyStk`-	(HappyAbsSyn98  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	(HappyAbsSyn77  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn63-		 (let inl_prag = mkInlinePragma (EmptyInlineSpec, FunLike) happy_var_2-                  in sL (comb2 happy_var_1 happy_var_6) $ toOL [ sL (comb2 happy_var_1 happy_var_6) $ SigD (SpecSig happy_var_3 t inl_prag) -                               | t <- happy_var_5]-	) `HappyStk` happyRest--happyReduce_360 = happyReduce 6 141 happyReduction_360-happyReduction_360 ((HappyTerminal happy_var_6) `HappyStk`-	(HappyAbsSyn98  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn17  happy_var_3) `HappyStk`-	(HappyAbsSyn77  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_6) $ toOL [ sL (comb2 happy_var_1 happy_var_6) $ SigD (SpecSig happy_var_3 t (mkInlinePragma (getSPEC_INLINE happy_var_1) happy_var_2))-                            | t <- happy_var_5]-	) `HappyStk` happyRest--happyReduce_361 = happyReduce 4 141 happyReduction_361-happyReduction_361 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn95  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn63-		 (sL (comb2 happy_var_1 happy_var_4) $ unitOL (sL (comb2 happy_var_1 happy_var_4) $ SigD (SpecInstSig happy_var_3))-	) `HappyStk` happyRest--happyReduce_362 = happySpecReduce_1  142 happyReduction_362-happyReduction_362 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn142-		 (let { loc = getLoc happy_var_1-                                ; ITquasiQuote (quoter, quote, quoteSpan) = unLoc happy_var_1-                                ; quoterId = mkUnqual varName quoter }-                            in sL (getLoc happy_var_1) (mkHsQuasiQuote quoterId (RealSrcSpan quoteSpan) quote)-	)-happyReduction_362 _  = notHappyAtAll --happyReduce_363 = happySpecReduce_1  142 happyReduction_363-happyReduction_363 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn142-		 (let { loc = getLoc happy_var_1-                                ; ITqQuasiQuote (qual, quoter, quote, quoteSpan) = unLoc happy_var_1-                                ; quoterId = mkQual varName (qual, quoter) }-                            in sL (getLoc happy_var_1) (mkHsQuasiQuote quoterId (RealSrcSpan quoteSpan) quote)-	)-happyReduction_363 _  = notHappyAtAll --happyReduce_364 = happySpecReduce_3  143 happyReduction_364-happyReduction_364 (HappyAbsSyn95  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ ExprWithTySig happy_var_1 happy_var_3-	)-happyReduction_364 _ _ _  = notHappyAtAll --happyReduce_365 = happySpecReduce_3  143 happyReduction_365-happyReduction_365 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ HsArrApp happy_var_1 happy_var_3 placeHolderType HsFirstOrderApp True-	)-happyReduction_365 _ _ _  = notHappyAtAll --happyReduce_366 = happySpecReduce_3  143 happyReduction_366-happyReduction_366 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ HsArrApp happy_var_3 happy_var_1 placeHolderType HsFirstOrderApp False-	)-happyReduction_366 _ _ _  = notHappyAtAll --happyReduce_367 = happySpecReduce_3  143 happyReduction_367-happyReduction_367 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ HsArrApp happy_var_1 happy_var_3 placeHolderType HsHigherOrderApp True-	)-happyReduction_367 _ _ _  = notHappyAtAll --happyReduce_368 = happySpecReduce_3  143 happyReduction_368-happyReduction_368 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ HsArrApp happy_var_3 happy_var_1 placeHolderType HsHigherOrderApp False-	)-happyReduction_368 _ _ _  = notHappyAtAll --happyReduce_369 = happySpecReduce_1  143 happyReduction_369-happyReduction_369 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (happy_var_1-	)-happyReduction_369 _  = notHappyAtAll --happyReduce_370 = happySpecReduce_1  144 happyReduction_370-happyReduction_370 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (happy_var_1-	)-happyReduction_370 _  = notHappyAtAll --happyReduce_371 = happySpecReduce_3  144 happyReduction_371-happyReduction_371 (HappyAbsSyn143  happy_var_3)-	(HappyAbsSyn143  happy_var_2)-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) (OpApp happy_var_1 happy_var_2 (panic "fixity") happy_var_3)-	)-happyReduction_371 _ _ _  = notHappyAtAll --happyReduce_372 = happyReduce 6 145 happyReduction_372-happyReduction_372 ((HappyAbsSyn143  happy_var_6) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn93  happy_var_4) `HappyStk`-	(HappyAbsSyn180  happy_var_3) `HappyStk`-	(HappyAbsSyn178  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_6) $ HsLam (mkMatchGroup [sL (comb2 happy_var_1 happy_var_6) $ Match (happy_var_2:happy_var_3) happy_var_4-                                                                (unguardedGRHSs happy_var_6)-                                                            ])-	) `HappyStk` happyRest--happyReduce_373 = happyReduce 4 145 happyReduction_373-happyReduction_373 ((HappyAbsSyn143  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn73  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_4) $ HsLet (unLoc happy_var_2) happy_var_4-	) `HappyStk` happyRest--happyReduce_374 = happySpecReduce_3  145 happyReduction_374-happyReduction_374 (HappyAbsSyn170  happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ HsLamCase placeHolderType (mkMatchGroup (unLoc happy_var_3))-	)-happyReduction_374 _ _ _  = notHappyAtAll --happyReduce_375 = happyMonadReduce 8 145 happyReduction_375-happyReduction_375 ((HappyAbsSyn143  happy_var_8) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn42  happy_var_6) `HappyStk`-	(HappyAbsSyn143  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn42  happy_var_3) `HappyStk`-	(HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkDoAndIfThenElse happy_var_2 happy_var_3 happy_var_5 happy_var_6 happy_var_8 >>-                                           return (sL (comb2 happy_var_1 happy_var_8) $ mkHsIf happy_var_2 happy_var_5 happy_var_8))-	) (\r -> happyReturn (HappyAbsSyn143 r))--happyReduce_376 = happyMonadReduce 2 145 happyReduction_376-happyReduction_376 ((HappyAbsSyn139  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( hintMultiWayIf (getLoc happy_var_1) >>-                                           return (sL (comb2 happy_var_1 happy_var_2) $ HsMultiIf placeHolderType (reverse $ unLoc happy_var_2)))-	) (\r -> happyReturn (HappyAbsSyn143 r))--happyReduce_377 = happyReduce 4 145 happyReduction_377-happyReduction_377 ((HappyAbsSyn170  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_4) $ HsCase happy_var_2 (mkMatchGroup (unLoc happy_var_4))-	) `HappyStk` happyRest--happyReduce_378 = happySpecReduce_2  145 happyReduction_378-happyReduction_378 (HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ NegApp happy_var_2 noSyntaxExpr-	)-happyReduction_378 _ _  = notHappyAtAll --happyReduce_379 = happySpecReduce_2  145 happyReduction_379-happyReduction_379 (HappyAbsSyn163  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (L (comb2 happy_var_1 happy_var_2) (mkHsDo DoExpr  (unLoc happy_var_2))-	)-happyReduction_379 _ _  = notHappyAtAll --happyReduce_380 = happySpecReduce_2  145 happyReduction_380-happyReduction_380 (HappyAbsSyn163  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (L (comb2 happy_var_1 happy_var_2) (mkHsDo MDoExpr (unLoc happy_var_2))-	)-happyReduction_380 _ _  = notHappyAtAll --happyReduce_381 = happySpecReduce_2  145 happyReduction_381-happyReduction_381 (HappyAbsSyn143  happy_var_2)-	(HappyAbsSyn147  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ if opt_SccProfilingOn-                                                        then HsSCC (unLoc happy_var_1) happy_var_2-                                                        else HsPar happy_var_2-	)-happyReduction_381 _ _  = notHappyAtAll --happyReduce_382 = happySpecReduce_2  145 happyReduction_382-happyReduction_382 (HappyAbsSyn143  happy_var_2)-	(HappyAbsSyn148  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ if opt_Hpc-                                                        then HsTickPragma (unLoc happy_var_1) happy_var_2-                                                        else HsPar happy_var_2-	)-happyReduction_382 _ _  = notHappyAtAll --happyReduce_383 = happyMonadReduce 4 145 happyReduction_383-happyReduction_383 ((HappyAbsSyn143  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkPattern happy_var_2 >>= \ p -> -                           return (sL (comb2 happy_var_1 happy_var_4) $ HsProc p (sL (comb2 happy_var_1 happy_var_4) $ HsCmdTop happy_var_4 [] -                                                   placeHolderType undefined)))-	) (\r -> happyReturn (HappyAbsSyn143 r))--happyReduce_384 = happyReduce 4 145 happyReduction_384-happyReduction_384 ((HappyAbsSyn143  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_4) $ HsCoreAnn (getSTRING happy_var_2) happy_var_4-	) `HappyStk` happyRest--happyReduce_385 = happySpecReduce_1  145 happyReduction_385-happyReduction_385 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (happy_var_1-	)-happyReduction_385 _  = notHappyAtAll --happyReduce_386 = happySpecReduce_1  146 happyReduction_386-happyReduction_386 _-	 =  HappyAbsSyn42-		 (True-	)--happyReduce_387 = happySpecReduce_0  146 happyReduction_387-happyReduction_387  =  HappyAbsSyn42-		 (False-	)--happyReduce_388 = happyMonadReduce 2 147 happyReduction_388-happyReduction_388 ((HappyTerminal happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( (addWarning Opt_WarnWarningsDeprecations (getLoc happy_var_1) (text "_scc_ is deprecated; use an SCC pragma instead")) >>= \_ ->-                                   ( do scc <- getSCC happy_var_2; return $ sL (comb2 happy_var_1 happy_var_2) scc ))-	) (\r -> happyReturn (HappyAbsSyn147 r))--happyReduce_389 = happyMonadReduce 3 147 happyReduction_389-happyReduction_389 ((HappyTerminal happy_var_3) `HappyStk`-	(HappyTerminal happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do scc <- getSCC happy_var_2; return $ sL (comb2 happy_var_1 happy_var_3) scc)-	) (\r -> happyReturn (HappyAbsSyn147 r))--happyReduce_390 = happySpecReduce_3  147 happyReduction_390-happyReduction_390 (HappyTerminal happy_var_3)-	(HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (comb2 happy_var_1 happy_var_3) (getVARID happy_var_2)-	)-happyReduction_390 _ _ _  = notHappyAtAll --happyReduce_391 = happyReduce 10 148 happyReduction_391-happyReduction_391 ((HappyTerminal happy_var_10) `HappyStk`-	(HappyTerminal happy_var_9) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_7) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_3) `HappyStk`-	(HappyTerminal happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn148-		 (sL (comb2 happy_var_1 happy_var_10) $ (getSTRING happy_var_2-                                                       ,( fromInteger $ getINTEGER happy_var_3-                                                        , fromInteger $ getINTEGER happy_var_5-                                                        )-                                                       ,( fromInteger $ getINTEGER happy_var_7-                                                        , fromInteger $ getINTEGER happy_var_9-                                                        )-                                                       )-	) `HappyStk` happyRest--happyReduce_392 = happySpecReduce_2  149 happyReduction_392-happyReduction_392 (HappyAbsSyn143  happy_var_2)-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ HsApp happy_var_1 happy_var_2-	)-happyReduction_392 _ _  = notHappyAtAll --happyReduce_393 = happySpecReduce_1  149 happyReduction_393-happyReduction_393 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (happy_var_1-	)-happyReduction_393 _  = notHappyAtAll --happyReduce_394 = happySpecReduce_3  150 happyReduction_394-happyReduction_394 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ EAsPat happy_var_1 happy_var_3-	)-happyReduction_394 _ _ _  = notHappyAtAll --happyReduce_395 = happySpecReduce_2  150 happyReduction_395-happyReduction_395 (HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ ELazyPat happy_var_2-	)-happyReduction_395 _ _  = notHappyAtAll --happyReduce_396 = happySpecReduce_1  150 happyReduction_396-happyReduction_396 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (happy_var_1-	)-happyReduction_396 _  = notHappyAtAll --happyReduce_397 = happyMonadReduce 4 151 happyReduction_397-happyReduction_397 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn187  happy_var_3) `HappyStk`-	(HappyTerminal happy_var_2) `HappyStk`-	(HappyAbsSyn143  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( do { r <- mkRecConstrOrUpdate happy_var_1 (comb2 happy_var_2 happy_var_4) happy_var_3-                                      ; checkRecordSyntax (sL (comb2 happy_var_1 happy_var_4) r) })-	) (\r -> happyReturn (HappyAbsSyn143 r))--happyReduce_398 = happySpecReduce_1  151 happyReduction_398-happyReduction_398 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (happy_var_1-	)-happyReduction_398 _  = notHappyAtAll --happyReduce_399 = happySpecReduce_1  152 happyReduction_399-happyReduction_399 (HappyAbsSyn192  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) (HsIPVar $! unLoc happy_var_1)-	)-happyReduction_399 _  = notHappyAtAll --happyReduce_400 = happySpecReduce_1  152 happyReduction_400-happyReduction_400 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) (HsVar   $! unLoc happy_var_1)-	)-happyReduction_400 _  = notHappyAtAll --happyReduce_401 = happySpecReduce_1  152 happyReduction_401-happyReduction_401 (HappyAbsSyn233  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) (HsLit   $! unLoc happy_var_1)-	)-happyReduction_401 _  = notHappyAtAll --happyReduce_402 = happySpecReduce_1  152 happyReduction_402-happyReduction_402 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) (HsOverLit $! mkHsIntegral (getINTEGER happy_var_1) placeHolderType)-	)-happyReduction_402 _  = notHappyAtAll --happyReduce_403 = happySpecReduce_1  152 happyReduction_403-happyReduction_403 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) (HsOverLit $! mkHsFractional (getRATIONAL happy_var_1) placeHolderType)-	)-happyReduction_403 _  = notHappyAtAll --happyReduce_404 = happySpecReduce_3  152 happyReduction_404-happyReduction_404 (HappyTerminal happy_var_3)-	(HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) (HsPar happy_var_2)-	)-happyReduction_404 _ _ _  = notHappyAtAll --happyReduce_405 = happySpecReduce_3  152 happyReduction_405-happyReduction_405 (HappyTerminal happy_var_3)-	(HappyAbsSyn158  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) (ExplicitTuple happy_var_2 Boxed)-	)-happyReduction_405 _ _ _  = notHappyAtAll --happyReduce_406 = happySpecReduce_3  152 happyReduction_406-happyReduction_406 (HappyTerminal happy_var_3)-	(HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) (ExplicitTuple [Present happy_var_2] Unboxed)-	)-happyReduction_406 _ _ _  = notHappyAtAll --happyReduce_407 = happySpecReduce_3  152 happyReduction_407-happyReduction_407 (HappyTerminal happy_var_3)-	(HappyAbsSyn158  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) (ExplicitTuple happy_var_2 Unboxed)-	)-happyReduction_407 _ _ _  = notHappyAtAll --happyReduce_408 = happySpecReduce_3  152 happyReduction_408-happyReduction_408 (HappyTerminal happy_var_3)-	(HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_408 _ _ _  = notHappyAtAll --happyReduce_409 = happySpecReduce_3  152 happyReduction_409-happyReduction_409 (HappyTerminal happy_var_3)-	(HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_409 _ _ _  = notHappyAtAll --happyReduce_410 = happySpecReduce_1  152 happyReduction_410-happyReduction_410 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) EWildPat-	)-happyReduction_410 _  = notHappyAtAll --happyReduce_411 = happySpecReduce_1  152 happyReduction_411-happyReduction_411 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) $ HsSpliceE (mkHsSplice -                                        (sL (getLoc happy_var_1) $ HsVar (mkUnqual varName -                                                        (getTH_ID_SPLICE happy_var_1))))-	)-happyReduction_411 _  = notHappyAtAll --happyReduce_412 = happySpecReduce_3  152 happyReduction_412-happyReduction_412 (HappyTerminal happy_var_3)-	(HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ HsSpliceE (mkHsSplice happy_var_2)-	)-happyReduction_412 _ _ _  = notHappyAtAll --happyReduce_413 = happySpecReduce_2  152 happyReduction_413-happyReduction_413 (HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ HsBracket (VarBr True  (unLoc happy_var_2))-	)-happyReduction_413 _ _  = notHappyAtAll --happyReduce_414 = happySpecReduce_2  152 happyReduction_414-happyReduction_414 (HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ HsBracket (VarBr True  (unLoc happy_var_2))-	)-happyReduction_414 _ _  = notHappyAtAll --happyReduce_415 = happySpecReduce_2  152 happyReduction_415-happyReduction_415 (HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ HsBracket (VarBr False (unLoc happy_var_2))-	)-happyReduction_415 _ _  = notHappyAtAll --happyReduce_416 = happySpecReduce_2  152 happyReduction_416-happyReduction_416 (HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ HsBracket (VarBr False (unLoc happy_var_2))-	)-happyReduction_416 _ _  = notHappyAtAll --happyReduce_417 = happySpecReduce_3  152 happyReduction_417-happyReduction_417 (HappyTerminal happy_var_3)-	(HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ HsBracket (ExpBr happy_var_2)-	)-happyReduction_417 _ _ _  = notHappyAtAll --happyReduce_418 = happySpecReduce_3  152 happyReduction_418-happyReduction_418 (HappyTerminal happy_var_3)-	(HappyAbsSyn95  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ HsBracket (TypBr happy_var_2)-	)-happyReduction_418 _ _ _  = notHappyAtAll --happyReduce_419 = happyMonadReduce 3 152 happyReduction_419-happyReduction_419 ((HappyTerminal happy_var_3) `HappyStk`-	(HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkPattern happy_var_2 >>= \p ->-                                        return (sL (comb2 happy_var_1 happy_var_3) $ HsBracket (PatBr p)))-	) (\r -> happyReturn (HappyAbsSyn143 r))--happyReduce_420 = happySpecReduce_3  152 happyReduction_420-happyReduction_420 (HappyTerminal happy_var_3)-	(HappyAbsSyn25  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ HsBracket (DecBrL happy_var_2)-	)-happyReduction_420 _ _ _  = notHappyAtAll --happyReduce_421 = happySpecReduce_1  152 happyReduction_421-happyReduction_421 (HappyAbsSyn142  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) (HsQuasiQuoteE (unLoc happy_var_1))-	)-happyReduction_421 _  = notHappyAtAll --happyReduce_422 = happyReduce 4 152 happyReduction_422-happyReduction_422 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn153  happy_var_3) `HappyStk`-	(HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_4) $ HsArrForm happy_var_2 Nothing (reverse happy_var_3)-	) `HappyStk` happyRest--happyReduce_423 = happySpecReduce_2  153 happyReduction_423-happyReduction_423 (HappyAbsSyn154  happy_var_2)-	(HappyAbsSyn153  happy_var_1)-	 =  HappyAbsSyn153-		 (happy_var_2 : happy_var_1-	)-happyReduction_423 _ _  = notHappyAtAll --happyReduce_424 = happySpecReduce_0  153 happyReduction_424-happyReduction_424  =  HappyAbsSyn153-		 ([]-	)--happyReduce_425 = happySpecReduce_1  154 happyReduction_425-happyReduction_425 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn154-		 (sL (getLoc happy_var_1) $ HsCmdTop happy_var_1 [] placeHolderType undefined-	)-happyReduction_425 _  = notHappyAtAll --happyReduce_426 = happySpecReduce_3  155 happyReduction_426-happyReduction_426 _-	(HappyAbsSyn25  happy_var_2)-	_-	 =  HappyAbsSyn25-		 (happy_var_2-	)-happyReduction_426 _ _ _  = notHappyAtAll --happyReduce_427 = happySpecReduce_3  155 happyReduction_427-happyReduction_427 _-	(HappyAbsSyn25  happy_var_2)-	_-	 =  HappyAbsSyn25-		 (happy_var_2-	)-happyReduction_427 _ _ _  = notHappyAtAll --happyReduce_428 = happySpecReduce_0  156 happyReduction_428-happyReduction_428  =  HappyAbsSyn25-		 ([]-	)--happyReduce_429 = happySpecReduce_1  156 happyReduction_429-happyReduction_429 (HappyAbsSyn25  happy_var_1)-	 =  HappyAbsSyn25-		 (happy_var_1-	)-happyReduction_429 _  = notHappyAtAll --happyReduce_430 = happySpecReduce_1  157 happyReduction_430-happyReduction_430 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (happy_var_1-	)-happyReduction_430 _  = notHappyAtAll --happyReduce_431 = happySpecReduce_2  157 happyReduction_431-happyReduction_431 (HappyAbsSyn143  happy_var_2)-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ SectionL happy_var_1 happy_var_2-	)-happyReduction_431 _ _  = notHappyAtAll --happyReduce_432 = happySpecReduce_2  157 happyReduction_432-happyReduction_432 (HappyAbsSyn143  happy_var_2)-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ SectionR happy_var_1 happy_var_2-	)-happyReduction_432 _ _  = notHappyAtAll --happyReduce_433 = happySpecReduce_3  157 happyReduction_433-happyReduction_433 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ EViewPat happy_var_1 happy_var_3-	)-happyReduction_433 _ _ _  = notHappyAtAll --happyReduce_434 = happySpecReduce_2  158 happyReduction_434-happyReduction_434 (HappyAbsSyn158  happy_var_2)-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn158-		 (Present happy_var_1 : happy_var_2-	)-happyReduction_434 _ _  = notHappyAtAll --happyReduce_435 = happySpecReduce_2  158 happyReduction_435-happyReduction_435 (HappyAbsSyn158  happy_var_2)-	(HappyAbsSyn48  happy_var_1)-	 =  HappyAbsSyn158-		 (replicate happy_var_1 missingTupArg ++ happy_var_2-	)-happyReduction_435 _ _  = notHappyAtAll --happyReduce_436 = happySpecReduce_2  159 happyReduction_436-happyReduction_436 (HappyAbsSyn158  happy_var_2)-	(HappyAbsSyn48  happy_var_1)-	 =  HappyAbsSyn158-		 (replicate (happy_var_1-1) missingTupArg ++ happy_var_2-	)-happyReduction_436 _ _  = notHappyAtAll --happyReduce_437 = happySpecReduce_2  160 happyReduction_437-happyReduction_437 (HappyAbsSyn158  happy_var_2)-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn158-		 (Present happy_var_1 : happy_var_2-	)-happyReduction_437 _ _  = notHappyAtAll --happyReduce_438 = happySpecReduce_1  160 happyReduction_438-happyReduction_438 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn158-		 ([Present happy_var_1]-	)-happyReduction_438 _  = notHappyAtAll --happyReduce_439 = happySpecReduce_0  160 happyReduction_439-happyReduction_439  =  HappyAbsSyn158-		 ([missingTupArg]-	)--happyReduce_440 = happySpecReduce_1  161 happyReduction_440-happyReduction_440 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) $ ExplicitList placeHolderType [happy_var_1]-	)-happyReduction_440 _  = notHappyAtAll --happyReduce_441 = happySpecReduce_1  161 happyReduction_441-happyReduction_441 (HappyAbsSyn162  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) $ ExplicitList placeHolderType (reverse (unLoc happy_var_1))-	)-happyReduction_441 _  = notHappyAtAll --happyReduce_442 = happySpecReduce_2  161 happyReduction_442-happyReduction_442 (HappyTerminal happy_var_2)-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_2) $ ArithSeq noPostTcExpr (From happy_var_1)-	)-happyReduction_442 _ _  = notHappyAtAll --happyReduce_443 = happyReduce 4 161 happyReduction_443-happyReduction_443 ((HappyTerminal happy_var_4) `HappyStk`-	(HappyAbsSyn143  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_4) $ ArithSeq noPostTcExpr (FromThen happy_var_1 happy_var_3)-	) `HappyStk` happyRest--happyReduce_444 = happySpecReduce_3  161 happyReduction_444-happyReduction_444 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ ArithSeq noPostTcExpr (FromTo happy_var_1 happy_var_3)-	)-happyReduction_444 _ _ _  = notHappyAtAll --happyReduce_445 = happyReduce 5 161 happyReduction_445-happyReduction_445 ((HappyAbsSyn143  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_5) $ ArithSeq noPostTcExpr (FromThenTo happy_var_1 happy_var_3 happy_var_5)-	) `HappyStk` happyRest--happyReduce_446 = happyMonadReduce 3 161 happyReduction_446-happyReduction_446 ((HappyAbsSyn163  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkMonadComp >>= \ ctxt ->-                return (sL (comb2 happy_var_1 happy_var_3) $ -                        mkHsComp ctxt (unLoc happy_var_3) happy_var_1))-	) (\r -> happyReturn (HappyAbsSyn143 r))--happyReduce_447 = happySpecReduce_3  162 happyReduction_447-happyReduction_447 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn162  happy_var_1)-	 =  HappyAbsSyn162-		 (sL (comb2 happy_var_1 happy_var_3) (((:) $! happy_var_3) $! unLoc happy_var_1)-	)-happyReduction_447 _ _ _  = notHappyAtAll --happyReduce_448 = happySpecReduce_3  162 happyReduction_448-happyReduction_448 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn162-		 (sL (comb2 happy_var_1 happy_var_3) [happy_var_3,happy_var_1]-	)-happyReduction_448 _ _ _  = notHappyAtAll --happyReduce_449 = happySpecReduce_1  163 happyReduction_449-happyReduction_449 (HappyAbsSyn164  happy_var_1)-	 =  HappyAbsSyn163-		 (case (unLoc happy_var_1) of-                    [qs] -> sL (getLoc happy_var_1) qs-                    -- We just had one thing in our "parallel" list so -                    -- we simply return that thing directly-                    -                    qss -> sL (getLoc happy_var_1) [sL (getLoc happy_var_1) $ ParStmt [ParStmtBlock qs undefined noSyntaxExpr | qs <- qss] -                                            noSyntaxExpr noSyntaxExpr]-                    -- We actually found some actual parallel lists so-                    -- we wrap them into as a ParStmt-	)-happyReduction_449 _  = notHappyAtAll --happyReduce_450 = happySpecReduce_3  164 happyReduction_450-happyReduction_450 (HappyAbsSyn164  happy_var_3)-	(HappyTerminal happy_var_2)-	(HappyAbsSyn163  happy_var_1)-	 =  HappyAbsSyn164-		 (L (getLoc happy_var_2) (reverse (unLoc happy_var_1) : unLoc happy_var_3)-	)-happyReduction_450 _ _ _  = notHappyAtAll --happyReduce_451 = happySpecReduce_1  164 happyReduction_451-happyReduction_451 (HappyAbsSyn163  happy_var_1)-	 =  HappyAbsSyn164-		 (L (getLoc happy_var_1) [reverse (unLoc happy_var_1)]-	)-happyReduction_451 _  = notHappyAtAll --happyReduce_452 = happySpecReduce_3  165 happyReduction_452-happyReduction_452 (HappyAbsSyn166  happy_var_3)-	_-	(HappyAbsSyn163  happy_var_1)-	 =  HappyAbsSyn163-		 (sL (comb2 happy_var_1 happy_var_3) [L (getLoc happy_var_3) ((unLoc happy_var_3) (reverse (unLoc happy_var_1)))]-	)-happyReduction_452 _ _ _  = notHappyAtAll --happyReduce_453 = happySpecReduce_3  165 happyReduction_453-happyReduction_453 (HappyAbsSyn185  happy_var_3)-	_-	(HappyAbsSyn163  happy_var_1)-	 =  HappyAbsSyn163-		 (sL (comb2 happy_var_1 happy_var_3) (happy_var_3 : unLoc happy_var_1)-	)-happyReduction_453 _ _ _  = notHappyAtAll --happyReduce_454 = happySpecReduce_1  165 happyReduction_454-happyReduction_454 (HappyAbsSyn166  happy_var_1)-	 =  HappyAbsSyn163-		 (sL (comb2 happy_var_1 happy_var_1) [L (getLoc happy_var_1) ((unLoc happy_var_1) [])]-	)-happyReduction_454 _  = notHappyAtAll --happyReduce_455 = happySpecReduce_1  165 happyReduction_455-happyReduction_455 (HappyAbsSyn185  happy_var_1)-	 =  HappyAbsSyn163-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_455 _  = notHappyAtAll --happyReduce_456 = happySpecReduce_2  166 happyReduction_456-happyReduction_456 (HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn166-		 (sL (comb2 happy_var_1 happy_var_2) $ \ss -> (mkTransformStmt    ss happy_var_2)-	)-happyReduction_456 _ _  = notHappyAtAll --happyReduce_457 = happyReduce 4 166 happyReduction_457-happyReduction_457 ((HappyAbsSyn143  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn166-		 (sL (comb2 happy_var_1 happy_var_4) $ \ss -> (mkTransformByStmt  ss happy_var_2 happy_var_4)-	) `HappyStk` happyRest--happyReduce_458 = happyReduce 4 166 happyReduction_458-happyReduction_458 ((HappyAbsSyn143  happy_var_4) `HappyStk`-	_ `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn166-		 (sL (comb2 happy_var_1 happy_var_4) $ \ss -> (mkGroupUsingStmt   ss happy_var_4)-	) `HappyStk` happyRest--happyReduce_459 = happyReduce 6 166 happyReduction_459-happyReduction_459 ((HappyAbsSyn143  happy_var_6) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_4) `HappyStk`-	_ `HappyStk`-	_ `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn166-		 (sL (comb2 happy_var_1 happy_var_6) $ \ss -> (mkGroupByUsingStmt ss happy_var_4 happy_var_6)-	) `HappyStk` happyRest--happyReduce_460 = happySpecReduce_0  167 happyReduction_460-happyReduction_460  =  HappyAbsSyn143-		 (noLoc (ExplicitPArr placeHolderType [])-	)--happyReduce_461 = happySpecReduce_1  167 happyReduction_461-happyReduction_461 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) $ ExplicitPArr placeHolderType [happy_var_1]-	)-happyReduction_461 _  = notHappyAtAll --happyReduce_462 = happySpecReduce_1  167 happyReduction_462-happyReduction_462 (HappyAbsSyn162  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) $ ExplicitPArr placeHolderType -                                                       (reverse (unLoc happy_var_1))-	)-happyReduction_462 _  = notHappyAtAll --happyReduce_463 = happySpecReduce_3  167 happyReduction_463-happyReduction_463 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ PArrSeq noPostTcExpr (FromTo happy_var_1 happy_var_3)-	)-happyReduction_463 _ _ _  = notHappyAtAll --happyReduce_464 = happyReduce 5 167 happyReduction_464-happyReduction_464 ((HappyAbsSyn143  happy_var_5) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_3) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn143  happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_5) $ PArrSeq noPostTcExpr (FromThenTo happy_var_1 happy_var_3 happy_var_5)-	) `HappyStk` happyRest--happyReduce_465 = happySpecReduce_3  167 happyReduction_465-happyReduction_465 (HappyAbsSyn163  happy_var_3)-	_-	(HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (comb2 happy_var_1 happy_var_3) $ mkHsComp PArrComp (unLoc happy_var_3) happy_var_1-	)-happyReduction_465 _ _ _  = notHappyAtAll --happyReduce_466 = happySpecReduce_1  168 happyReduction_466-happyReduction_466 (HappyAbsSyn163  happy_var_1)-	 =  HappyAbsSyn163-		 (L (getLoc happy_var_1) (reverse (unLoc happy_var_1))-	)-happyReduction_466 _  = notHappyAtAll --happyReduce_467 = happySpecReduce_3  169 happyReduction_467-happyReduction_467 (HappyAbsSyn185  happy_var_3)-	_-	(HappyAbsSyn163  happy_var_1)-	 =  HappyAbsSyn163-		 (sL (comb2 happy_var_1 happy_var_3) (happy_var_3 : unLoc happy_var_1)-	)-happyReduction_467 _ _ _  = notHappyAtAll --happyReduce_468 = happySpecReduce_1  169 happyReduction_468-happyReduction_468 (HappyAbsSyn185  happy_var_1)-	 =  HappyAbsSyn163-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_468 _  = notHappyAtAll --happyReduce_469 = happySpecReduce_3  170 happyReduction_469-happyReduction_469 (HappyTerminal happy_var_3)-	(HappyAbsSyn170  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn170-		 (sL (comb2 happy_var_1 happy_var_3) (reverse (unLoc happy_var_2))-	)-happyReduction_469 _ _ _  = notHappyAtAll --happyReduce_470 = happySpecReduce_3  170 happyReduction_470-happyReduction_470 _-	(HappyAbsSyn170  happy_var_2)-	_-	 =  HappyAbsSyn170-		 (L (getLoc happy_var_2) (reverse (unLoc happy_var_2))-	)-happyReduction_470 _ _ _  = notHappyAtAll --happyReduce_471 = happySpecReduce_1  171 happyReduction_471-happyReduction_471 (HappyAbsSyn170  happy_var_1)-	 =  HappyAbsSyn170-		 (sL (getLoc happy_var_1) (unLoc happy_var_1)-	)-happyReduction_471 _  = notHappyAtAll --happyReduce_472 = happySpecReduce_2  171 happyReduction_472-happyReduction_472 (HappyAbsSyn170  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn170-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_2)-	)-happyReduction_472 _ _  = notHappyAtAll --happyReduce_473 = happySpecReduce_3  172 happyReduction_473-happyReduction_473 (HappyAbsSyn173  happy_var_3)-	_-	(HappyAbsSyn170  happy_var_1)-	 =  HappyAbsSyn170-		 (sL (comb2 happy_var_1 happy_var_3) (happy_var_3 : unLoc happy_var_1)-	)-happyReduction_473 _ _ _  = notHappyAtAll --happyReduce_474 = happySpecReduce_2  172 happyReduction_474-happyReduction_474 (HappyTerminal happy_var_2)-	(HappyAbsSyn170  happy_var_1)-	 =  HappyAbsSyn170-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_1)-	)-happyReduction_474 _ _  = notHappyAtAll --happyReduce_475 = happySpecReduce_1  172 happyReduction_475-happyReduction_475 (HappyAbsSyn173  happy_var_1)-	 =  HappyAbsSyn170-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_475 _  = notHappyAtAll --happyReduce_476 = happySpecReduce_3  173 happyReduction_476-happyReduction_476 (HappyAbsSyn138  happy_var_3)-	(HappyAbsSyn93  happy_var_2)-	(HappyAbsSyn178  happy_var_1)-	 =  HappyAbsSyn173-		 (sL (comb2 happy_var_1 happy_var_3) (Match [happy_var_1] happy_var_2 (unLoc happy_var_3))-	)-happyReduction_476 _ _ _  = notHappyAtAll --happyReduce_477 = happySpecReduce_2  174 happyReduction_477-happyReduction_477 (HappyAbsSyn73  happy_var_2)-	(HappyAbsSyn139  happy_var_1)-	 =  HappyAbsSyn138-		 (sL (comb2 happy_var_1 happy_var_2) (GRHSs (unLoc happy_var_1) (unLoc happy_var_2))-	)-happyReduction_477 _ _  = notHappyAtAll --happyReduce_478 = happySpecReduce_2  175 happyReduction_478-happyReduction_478 (HappyAbsSyn143  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn139-		 (sL (comb2 happy_var_1 happy_var_2) (unguardedRHS happy_var_2)-	)-happyReduction_478 _ _  = notHappyAtAll --happyReduce_479 = happySpecReduce_1  175 happyReduction_479-happyReduction_479 (HappyAbsSyn139  happy_var_1)-	 =  HappyAbsSyn139-		 (sL (getLoc happy_var_1) (reverse (unLoc happy_var_1))-	)-happyReduction_479 _  = notHappyAtAll --happyReduce_480 = happySpecReduce_2  176 happyReduction_480-happyReduction_480 (HappyAbsSyn140  happy_var_2)-	(HappyAbsSyn139  happy_var_1)-	 =  HappyAbsSyn139-		 (sL (comb2 happy_var_1 happy_var_2) (happy_var_2 : unLoc happy_var_1)-	)-happyReduction_480 _ _  = notHappyAtAll --happyReduce_481 = happySpecReduce_1  176 happyReduction_481-happyReduction_481 (HappyAbsSyn140  happy_var_1)-	 =  HappyAbsSyn139-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_481 _  = notHappyAtAll --happyReduce_482 = happyReduce 4 177 happyReduction_482-happyReduction_482 ((HappyAbsSyn143  happy_var_4) `HappyStk`-	_ `HappyStk`-	(HappyAbsSyn163  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest)-	 = HappyAbsSyn140-		 (sL (comb2 happy_var_1 happy_var_4) $ GRHS (unLoc happy_var_2) happy_var_4-	) `HappyStk` happyRest--happyReduce_483 = happyMonadReduce 1 178 happyReduction_483-happyReduction_483 ((HappyAbsSyn143  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkPattern happy_var_1)-	) (\r -> happyReturn (HappyAbsSyn178 r))--happyReduce_484 = happyMonadReduce 2 178 happyReduction_484-happyReduction_484 ((HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkPattern (sL (comb2 happy_var_1 happy_var_2) (SectionR (sL (getLoc happy_var_1) (HsVar bang_RDR)) happy_var_2)))-	) (\r -> happyReturn (HappyAbsSyn178 r))--happyReduce_485 = happyMonadReduce 1 179 happyReduction_485-happyReduction_485 ((HappyAbsSyn143  happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkPattern happy_var_1)-	) (\r -> happyReturn (HappyAbsSyn178 r))--happyReduce_486 = happyMonadReduce 2 179 happyReduction_486-happyReduction_486 ((HappyAbsSyn143  happy_var_2) `HappyStk`-	(HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( checkPattern (sL (comb2 happy_var_1 happy_var_2) (SectionR (sL (getLoc happy_var_1) (HsVar bang_RDR)) happy_var_2)))-	) (\r -> happyReturn (HappyAbsSyn178 r))--happyReduce_487 = happySpecReduce_2  180 happyReduction_487-happyReduction_487 (HappyAbsSyn180  happy_var_2)-	(HappyAbsSyn178  happy_var_1)-	 =  HappyAbsSyn180-		 (happy_var_1 : happy_var_2-	)-happyReduction_487 _ _  = notHappyAtAll --happyReduce_488 = happySpecReduce_0  180 happyReduction_488-happyReduction_488  =  HappyAbsSyn180-		 ([]-	)--happyReduce_489 = happySpecReduce_3  181 happyReduction_489-happyReduction_489 (HappyTerminal happy_var_3)-	(HappyAbsSyn163  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn163-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_489 _ _ _  = notHappyAtAll --happyReduce_490 = happySpecReduce_3  181 happyReduction_490-happyReduction_490 _-	(HappyAbsSyn163  happy_var_2)-	_-	 =  HappyAbsSyn163-		 (happy_var_2-	)-happyReduction_490 _ _ _  = notHappyAtAll --happyReduce_491 = happySpecReduce_2  182 happyReduction_491-happyReduction_491 (HappyAbsSyn163  happy_var_2)-	(HappyAbsSyn185  happy_var_1)-	 =  HappyAbsSyn163-		 (sL (comb2 happy_var_1 happy_var_2) (happy_var_1 : unLoc happy_var_2)-	)-happyReduction_491 _ _  = notHappyAtAll --happyReduce_492 = happySpecReduce_2  182 happyReduction_492-happyReduction_492 (HappyAbsSyn163  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn163-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_2)-	)-happyReduction_492 _ _  = notHappyAtAll --happyReduce_493 = happySpecReduce_0  182 happyReduction_493-happyReduction_493  =  HappyAbsSyn163-		 (noLoc []-	)--happyReduce_494 = happySpecReduce_2  183 happyReduction_494-happyReduction_494 (HappyAbsSyn163  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn163-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_2)-	)-happyReduction_494 _ _  = notHappyAtAll --happyReduce_495 = happySpecReduce_0  183 happyReduction_495-happyReduction_495  =  HappyAbsSyn163-		 (noLoc []-	)--happyReduce_496 = happySpecReduce_1  184 happyReduction_496-happyReduction_496 (HappyAbsSyn185  happy_var_1)-	 =  HappyAbsSyn184-		 (Just happy_var_1-	)-happyReduction_496 _  = notHappyAtAll --happyReduce_497 = happySpecReduce_0  184 happyReduction_497-happyReduction_497  =  HappyAbsSyn184-		 (Nothing-	)--happyReduce_498 = happySpecReduce_1  185 happyReduction_498-happyReduction_498 (HappyAbsSyn185  happy_var_1)-	 =  HappyAbsSyn185-		 (happy_var_1-	)-happyReduction_498 _  = notHappyAtAll --happyReduce_499 = happySpecReduce_2  185 happyReduction_499-happyReduction_499 (HappyAbsSyn163  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn185-		 (sL (comb2 happy_var_1 happy_var_2) $ mkRecStmt (unLoc happy_var_2)-	)-happyReduction_499 _ _  = notHappyAtAll --happyReduce_500 = happySpecReduce_3  186 happyReduction_500-happyReduction_500 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn178  happy_var_1)-	 =  HappyAbsSyn185-		 (sL (comb2 happy_var_1 happy_var_3) $ mkBindStmt happy_var_1 happy_var_3-	)-happyReduction_500 _ _ _  = notHappyAtAll --happyReduce_501 = happySpecReduce_1  186 happyReduction_501-happyReduction_501 (HappyAbsSyn143  happy_var_1)-	 =  HappyAbsSyn185-		 (sL (getLoc happy_var_1) $ mkExprStmt happy_var_1-	)-happyReduction_501 _  = notHappyAtAll --happyReduce_502 = happySpecReduce_2  186 happyReduction_502-happyReduction_502 (HappyAbsSyn73  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn185-		 (sL (comb2 happy_var_1 happy_var_2) $ LetStmt (unLoc happy_var_2)-	)-happyReduction_502 _ _  = notHappyAtAll --happyReduce_503 = happySpecReduce_1  187 happyReduction_503-happyReduction_503 (HappyAbsSyn187  happy_var_1)-	 =  HappyAbsSyn187-		 (happy_var_1-	)-happyReduction_503 _  = notHappyAtAll --happyReduce_504 = happySpecReduce_0  187 happyReduction_504-happyReduction_504  =  HappyAbsSyn187-		 (([], False)-	)--happyReduce_505 = happySpecReduce_3  188 happyReduction_505-happyReduction_505 (HappyAbsSyn187  happy_var_3)-	_-	(HappyAbsSyn189  happy_var_1)-	 =  HappyAbsSyn187-		 (case happy_var_3 of (flds, dd) -> (happy_var_1 : flds, dd)-	)-happyReduction_505 _ _ _  = notHappyAtAll --happyReduce_506 = happySpecReduce_1  188 happyReduction_506-happyReduction_506 (HappyAbsSyn189  happy_var_1)-	 =  HappyAbsSyn187-		 (([happy_var_1], False)-	)-happyReduction_506 _  = notHappyAtAll --happyReduce_507 = happySpecReduce_1  188 happyReduction_507-happyReduction_507 _-	 =  HappyAbsSyn187-		 (([],   True)-	)--happyReduce_508 = happySpecReduce_3  189 happyReduction_508-happyReduction_508 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn189-		 (HsRecField happy_var_1 happy_var_3                False-	)-happyReduction_508 _ _ _  = notHappyAtAll --happyReduce_509 = happySpecReduce_1  189 happyReduction_509-happyReduction_509 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn189-		 (HsRecField happy_var_1 placeHolderPunRhs True-	)-happyReduction_509 _  = notHappyAtAll --happyReduce_510 = happySpecReduce_3  190 happyReduction_510-happyReduction_510 (HappyAbsSyn191  happy_var_3)-	_-	(HappyAbsSyn190  happy_var_1)-	 =  HappyAbsSyn190-		 (let { this = happy_var_3; rest = unLoc happy_var_1 }-                              in rest `seq` this `seq` sL (comb2 happy_var_1 happy_var_3) (this : rest)-	)-happyReduction_510 _ _ _  = notHappyAtAll --happyReduce_511 = happySpecReduce_2  190 happyReduction_511-happyReduction_511 (HappyTerminal happy_var_2)-	(HappyAbsSyn190  happy_var_1)-	 =  HappyAbsSyn190-		 (sL (comb2 happy_var_1 happy_var_2) (unLoc happy_var_1)-	)-happyReduction_511 _ _  = notHappyAtAll --happyReduce_512 = happySpecReduce_1  190 happyReduction_512-happyReduction_512 (HappyAbsSyn191  happy_var_1)-	 =  HappyAbsSyn190-		 (let this = happy_var_1 in this `seq` sL (getLoc happy_var_1) [this]-	)-happyReduction_512 _  = notHappyAtAll --happyReduce_513 = happySpecReduce_3  191 happyReduction_513-happyReduction_513 (HappyAbsSyn143  happy_var_3)-	_-	(HappyAbsSyn192  happy_var_1)-	 =  HappyAbsSyn191-		 (sL (comb2 happy_var_1 happy_var_3) (IPBind (Left (unLoc happy_var_1)) happy_var_3)-	)-happyReduction_513 _ _ _  = notHappyAtAll --happyReduce_514 = happySpecReduce_1  192 happyReduction_514-happyReduction_514 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn192-		 (sL (getLoc happy_var_1) (HsIPName (getIPDUPVARID happy_var_1))-	)-happyReduction_514 _  = notHappyAtAll --happyReduce_515 = happySpecReduce_1  193 happyReduction_515-happyReduction_515 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn117-		 (sL (getLoc happy_var_1) [unLoc happy_var_1]-	)-happyReduction_515 _  = notHappyAtAll --happyReduce_516 = happySpecReduce_3  193 happyReduction_516-happyReduction_516 (HappyAbsSyn117  happy_var_3)-	_-	(HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn117-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_1 : unLoc happy_var_3)-	)-happyReduction_516 _ _ _  = notHappyAtAll --happyReduce_517 = happySpecReduce_1  194 happyReduction_517-happyReduction_517 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_517 _  = notHappyAtAll --happyReduce_518 = happySpecReduce_1  194 happyReduction_518-happyReduction_518 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_518 _  = notHappyAtAll --happyReduce_519 = happySpecReduce_1  195 happyReduction_519-happyReduction_519 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_519 _  = notHappyAtAll --happyReduce_520 = happySpecReduce_3  195 happyReduction_520-happyReduction_520 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_520 _ _ _  = notHappyAtAll --happyReduce_521 = happySpecReduce_1  195 happyReduction_521-happyReduction_521 (HappyAbsSyn198  happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ nameRdrName (dataConName (unLoc happy_var_1))-	)-happyReduction_521 _  = notHappyAtAll --happyReduce_522 = happySpecReduce_1  196 happyReduction_522-happyReduction_522 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_522 _  = notHappyAtAll --happyReduce_523 = happySpecReduce_3  196 happyReduction_523-happyReduction_523 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_523 _ _ _  = notHappyAtAll --happyReduce_524 = happySpecReduce_1  196 happyReduction_524-happyReduction_524 (HappyAbsSyn198  happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ nameRdrName (dataConName (unLoc happy_var_1))-	)-happyReduction_524 _  = notHappyAtAll --happyReduce_525 = happySpecReduce_1  197 happyReduction_525-happyReduction_525 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn50-		 (sL (getLoc happy_var_1) [happy_var_1]-	)-happyReduction_525 _  = notHappyAtAll --happyReduce_526 = happySpecReduce_3  197 happyReduction_526-happyReduction_526 (HappyAbsSyn50  happy_var_3)-	_-	(HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn50-		 (sL (comb2 happy_var_1 happy_var_3) (happy_var_1 : unLoc happy_var_3)-	)-happyReduction_526 _ _ _  = notHappyAtAll --happyReduce_527 = happySpecReduce_2  198 happyReduction_527-happyReduction_527 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn198-		 (sL (comb2 happy_var_1 happy_var_2) unitDataCon-	)-happyReduction_527 _ _  = notHappyAtAll --happyReduce_528 = happySpecReduce_3  198 happyReduction_528-happyReduction_528 (HappyTerminal happy_var_3)-	(HappyAbsSyn48  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn198-		 (sL (comb2 happy_var_1 happy_var_3) $ tupleCon BoxedTuple (happy_var_2 + 1)-	)-happyReduction_528 _ _ _  = notHappyAtAll --happyReduce_529 = happySpecReduce_2  198 happyReduction_529-happyReduction_529 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn198-		 (sL (comb2 happy_var_1 happy_var_2) $ unboxedUnitDataCon-	)-happyReduction_529 _ _  = notHappyAtAll --happyReduce_530 = happySpecReduce_3  198 happyReduction_530-happyReduction_530 (HappyTerminal happy_var_3)-	(HappyAbsSyn48  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn198-		 (sL (comb2 happy_var_1 happy_var_3) $ tupleCon UnboxedTuple (happy_var_2 + 1)-	)-happyReduction_530 _ _ _  = notHappyAtAll --happyReduce_531 = happySpecReduce_2  198 happyReduction_531-happyReduction_531 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn198-		 (sL (comb2 happy_var_1 happy_var_2) nilDataCon-	)-happyReduction_531 _ _  = notHappyAtAll --happyReduce_532 = happySpecReduce_1  199 happyReduction_532-happyReduction_532 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_532 _  = notHappyAtAll --happyReduce_533 = happySpecReduce_3  199 happyReduction_533-happyReduction_533 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_533 _ _ _  = notHappyAtAll --happyReduce_534 = happySpecReduce_1  200 happyReduction_534-happyReduction_534 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_534 _  = notHappyAtAll --happyReduce_535 = happySpecReduce_3  200 happyReduction_535-happyReduction_535 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_535 _ _ _  = notHappyAtAll --happyReduce_536 = happySpecReduce_1  201 happyReduction_536-happyReduction_536 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_536 _  = notHappyAtAll --happyReduce_537 = happySpecReduce_2  201 happyReduction_537-happyReduction_537 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_2) $ getRdrName unitTyCon-	)-happyReduction_537 _ _  = notHappyAtAll --happyReduce_538 = happySpecReduce_2  201 happyReduction_538-happyReduction_538 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_2) $ getRdrName unboxedUnitTyCon-	)-happyReduction_538 _ _  = notHappyAtAll --happyReduce_539 = happySpecReduce_1  202 happyReduction_539-happyReduction_539 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_539 _  = notHappyAtAll --happyReduce_540 = happySpecReduce_3  202 happyReduction_540-happyReduction_540 (HappyTerminal happy_var_3)-	(HappyAbsSyn48  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) $ getRdrName (tupleTyCon BoxedTuple (happy_var_2 + 1))-	)-happyReduction_540 _ _ _  = notHappyAtAll --happyReduce_541 = happySpecReduce_3  202 happyReduction_541-happyReduction_541 (HappyTerminal happy_var_3)-	(HappyAbsSyn48  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) $ getRdrName (tupleTyCon UnboxedTuple (happy_var_2 + 1))-	)-happyReduction_541 _ _ _  = notHappyAtAll --happyReduce_542 = happySpecReduce_3  202 happyReduction_542-happyReduction_542 (HappyTerminal happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) $ getRdrName funTyCon-	)-happyReduction_542 _ _ _  = notHappyAtAll --happyReduce_543 = happySpecReduce_2  202 happyReduction_543-happyReduction_543 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_2) $ listTyCon_RDR-	)-happyReduction_543 _ _  = notHappyAtAll --happyReduce_544 = happySpecReduce_2  202 happyReduction_544-happyReduction_544 (HappyTerminal happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_2) $ parrTyCon_RDR-	)-happyReduction_544 _ _  = notHappyAtAll --happyReduce_545 = happySpecReduce_3  202 happyReduction_545-happyReduction_545 (HappyTerminal happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) $ getRdrName eqPrimTyCon-	)-happyReduction_545 _ _ _  = notHappyAtAll --happyReduce_546 = happySpecReduce_1  203 happyReduction_546-happyReduction_546 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_546 _  = notHappyAtAll --happyReduce_547 = happySpecReduce_3  203 happyReduction_547-happyReduction_547 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_547 _ _ _  = notHappyAtAll --happyReduce_548 = happySpecReduce_3  203 happyReduction_548-happyReduction_548 (HappyTerminal happy_var_3)-	_-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) $ eqTyCon_RDR-	)-happyReduction_548 _ _ _  = notHappyAtAll --happyReduce_549 = happySpecReduce_1  204 happyReduction_549-happyReduction_549 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_549 _  = notHappyAtAll --happyReduce_550 = happySpecReduce_3  204 happyReduction_550-happyReduction_550 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_550 _ _ _  = notHappyAtAll --happyReduce_551 = happySpecReduce_1  205 happyReduction_551-happyReduction_551 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkQual tcClsName (getQCONID happy_var_1)-	)-happyReduction_551 _  = notHappyAtAll --happyReduce_552 = happySpecReduce_1  205 happyReduction_552-happyReduction_552 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkQual tcClsName (getPREFIXQCONSYM happy_var_1)-	)-happyReduction_552 _  = notHappyAtAll --happyReduce_553 = happySpecReduce_1  205 happyReduction_553-happyReduction_553 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_553 _  = notHappyAtAll --happyReduce_554 = happySpecReduce_1  206 happyReduction_554-happyReduction_554 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual tcClsName (getCONID happy_var_1)-	)-happyReduction_554 _  = notHappyAtAll --happyReduce_555 = happySpecReduce_1  207 happyReduction_555-happyReduction_555 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkQual tcClsName (getQCONSYM happy_var_1)-	)-happyReduction_555 _  = notHappyAtAll --happyReduce_556 = happySpecReduce_1  207 happyReduction_556-happyReduction_556 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkQual tcClsName (getQVARSYM happy_var_1)-	)-happyReduction_556 _  = notHappyAtAll --happyReduce_557 = happySpecReduce_1  207 happyReduction_557-happyReduction_557 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_557 _  = notHappyAtAll --happyReduce_558 = happySpecReduce_1  208 happyReduction_558-happyReduction_558 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual tcClsName (getCONSYM happy_var_1)-	)-happyReduction_558 _  = notHappyAtAll --happyReduce_559 = happySpecReduce_1  208 happyReduction_559-happyReduction_559 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual tcClsName (getVARSYM happy_var_1)-	)-happyReduction_559 _  = notHappyAtAll --happyReduce_560 = happySpecReduce_1  208 happyReduction_560-happyReduction_560 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual tcClsName (fsLit "*")-	)-happyReduction_560 _  = notHappyAtAll --happyReduce_561 = happySpecReduce_1  209 happyReduction_561-happyReduction_561 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_561 _  = notHappyAtAll --happyReduce_562 = happySpecReduce_1  209 happyReduction_562-happyReduction_562 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_562 _  = notHappyAtAll --happyReduce_563 = happySpecReduce_1  210 happyReduction_563-happyReduction_563 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_563 _  = notHappyAtAll --happyReduce_564 = happySpecReduce_3  210 happyReduction_564-happyReduction_564 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_564 _ _ _  = notHappyAtAll --happyReduce_565 = happySpecReduce_1  211 happyReduction_565-happyReduction_565 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) $ HsVar (unLoc happy_var_1)-	)-happyReduction_565 _  = notHappyAtAll --happyReduce_566 = happySpecReduce_1  211 happyReduction_566-happyReduction_566 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) $ HsVar (unLoc happy_var_1)-	)-happyReduction_566 _  = notHappyAtAll --happyReduce_567 = happySpecReduce_1  212 happyReduction_567-happyReduction_567 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) $ HsVar (unLoc happy_var_1)-	)-happyReduction_567 _  = notHappyAtAll --happyReduce_568 = happySpecReduce_1  212 happyReduction_568-happyReduction_568 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn143-		 (sL (getLoc happy_var_1) $ HsVar (unLoc happy_var_1)-	)-happyReduction_568 _  = notHappyAtAll --happyReduce_569 = happySpecReduce_1  213 happyReduction_569-happyReduction_569 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_569 _  = notHappyAtAll --happyReduce_570 = happySpecReduce_3  213 happyReduction_570-happyReduction_570 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_570 _ _ _  = notHappyAtAll --happyReduce_571 = happySpecReduce_1  214 happyReduction_571-happyReduction_571 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_571 _  = notHappyAtAll --happyReduce_572 = happySpecReduce_3  214 happyReduction_572-happyReduction_572 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_572 _ _ _  = notHappyAtAll --happyReduce_573 = happySpecReduce_1  215 happyReduction_573-happyReduction_573 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_573 _  = notHappyAtAll --happyReduce_574 = happySpecReduce_3  216 happyReduction_574-happyReduction_574 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_574 _ _ _  = notHappyAtAll --happyReduce_575 = happyMonadReduce 1 216 happyReduction_575-happyReduction_575 ((HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( parseErrorSDoc (getLoc happy_var_1) -                                      (vcat [ptext (sLit "Illegal symbol '.' in type"), -                                             ptext (sLit "Perhaps you intended -XRankNTypes or similar flag"),-                                             ptext (sLit "to enable explicit-forall syntax: forall <tvs>. <type>")]))-	) (\r -> happyReturn (HappyAbsSyn17 r))--happyReduce_576 = happySpecReduce_1  217 happyReduction_576-happyReduction_576 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual tvName (getVARID happy_var_1)-	)-happyReduction_576 _  = notHappyAtAll --happyReduce_577 = happySpecReduce_1  217 happyReduction_577-happyReduction_577 (HappyAbsSyn147  happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual tvName (unLoc happy_var_1)-	)-happyReduction_577 _  = notHappyAtAll --happyReduce_578 = happySpecReduce_1  217 happyReduction_578-happyReduction_578 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual tvName (fsLit "unsafe")-	)-happyReduction_578 _  = notHappyAtAll --happyReduce_579 = happySpecReduce_1  217 happyReduction_579-happyReduction_579 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual tvName (fsLit "safe")-	)-happyReduction_579 _  = notHappyAtAll --happyReduce_580 = happySpecReduce_1  217 happyReduction_580-happyReduction_580 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual tvName (fsLit "interruptible")-	)-happyReduction_580 _  = notHappyAtAll --happyReduce_581 = happySpecReduce_1  218 happyReduction_581-happyReduction_581 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_581 _  = notHappyAtAll --happyReduce_582 = happySpecReduce_3  218 happyReduction_582-happyReduction_582 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_582 _ _ _  = notHappyAtAll --happyReduce_583 = happySpecReduce_1  219 happyReduction_583-happyReduction_583 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_583 _  = notHappyAtAll --happyReduce_584 = happySpecReduce_3  219 happyReduction_584-happyReduction_584 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_584 _ _ _  = notHappyAtAll --happyReduce_585 = happySpecReduce_3  219 happyReduction_585-happyReduction_585 (HappyTerminal happy_var_3)-	(HappyAbsSyn17  happy_var_2)-	(HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (comb2 happy_var_1 happy_var_3) (unLoc happy_var_2)-	)-happyReduction_585 _ _ _  = notHappyAtAll --happyReduce_586 = happySpecReduce_1  220 happyReduction_586-happyReduction_586 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_586 _  = notHappyAtAll --happyReduce_587 = happySpecReduce_1  220 happyReduction_587-happyReduction_587 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkQual varName (getQVARID happy_var_1)-	)-happyReduction_587 _  = notHappyAtAll --happyReduce_588 = happySpecReduce_1  220 happyReduction_588-happyReduction_588 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkQual varName (getPREFIXQVARSYM happy_var_1)-	)-happyReduction_588 _  = notHappyAtAll --happyReduce_589 = happySpecReduce_1  221 happyReduction_589-happyReduction_589 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual varName (getVARID happy_var_1)-	)-happyReduction_589 _  = notHappyAtAll --happyReduce_590 = happySpecReduce_1  221 happyReduction_590-happyReduction_590 (HappyAbsSyn147  happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual varName (unLoc happy_var_1)-	)-happyReduction_590 _  = notHappyAtAll --happyReduce_591 = happySpecReduce_1  221 happyReduction_591-happyReduction_591 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual varName (fsLit "unsafe")-	)-happyReduction_591 _  = notHappyAtAll --happyReduce_592 = happySpecReduce_1  221 happyReduction_592-happyReduction_592 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual varName (fsLit "safe")-	)-happyReduction_592 _  = notHappyAtAll --happyReduce_593 = happySpecReduce_1  221 happyReduction_593-happyReduction_593 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual varName (fsLit "interruptible")-	)-happyReduction_593 _  = notHappyAtAll --happyReduce_594 = happySpecReduce_1  221 happyReduction_594-happyReduction_594 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual varName (fsLit "forall")-	)-happyReduction_594 _  = notHappyAtAll --happyReduce_595 = happySpecReduce_1  221 happyReduction_595-happyReduction_595 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkUnqual varName (fsLit "family")-	)-happyReduction_595 _  = notHappyAtAll --happyReduce_596 = happySpecReduce_1  222 happyReduction_596-happyReduction_596 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_596 _  = notHappyAtAll --happyReduce_597 = happySpecReduce_1  222 happyReduction_597-happyReduction_597 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_597 _  = notHappyAtAll --happyReduce_598 = happySpecReduce_1  223 happyReduction_598-happyReduction_598 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_598 _  = notHappyAtAll --happyReduce_599 = happySpecReduce_1  223 happyReduction_599-happyReduction_599 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_599 _  = notHappyAtAll --happyReduce_600 = happySpecReduce_1  224 happyReduction_600-happyReduction_600 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ mkQual varName (getQVARSYM happy_var_1)-	)-happyReduction_600 _  = notHappyAtAll --happyReduce_601 = happySpecReduce_1  225 happyReduction_601-happyReduction_601 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_601 _  = notHappyAtAll --happyReduce_602 = happySpecReduce_1  225 happyReduction_602-happyReduction_602 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ mkUnqual varName (fsLit "-")-	)-happyReduction_602 _  = notHappyAtAll --happyReduce_603 = happySpecReduce_1  226 happyReduction_603-happyReduction_603 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ mkUnqual varName (getVARSYM happy_var_1)-	)-happyReduction_603 _  = notHappyAtAll --happyReduce_604 = happySpecReduce_1  226 happyReduction_604-happyReduction_604 (HappyAbsSyn147  happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ mkUnqual varName (unLoc happy_var_1)-	)-happyReduction_604 _  = notHappyAtAll --happyReduce_605 = happySpecReduce_1  227 happyReduction_605-happyReduction_605 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "as")-	)-happyReduction_605 _  = notHappyAtAll --happyReduce_606 = happySpecReduce_1  227 happyReduction_606-happyReduction_606 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "qualified")-	)-happyReduction_606 _  = notHappyAtAll --happyReduce_607 = happySpecReduce_1  227 happyReduction_607-happyReduction_607 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "hiding")-	)-happyReduction_607 _  = notHappyAtAll --happyReduce_608 = happySpecReduce_1  227 happyReduction_608-happyReduction_608 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "export")-	)-happyReduction_608 _  = notHappyAtAll --happyReduce_609 = happySpecReduce_1  227 happyReduction_609-happyReduction_609 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "label")-	)-happyReduction_609 _  = notHappyAtAll --happyReduce_610 = happySpecReduce_1  227 happyReduction_610-happyReduction_610 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "dynamic")-	)-happyReduction_610 _  = notHappyAtAll --happyReduce_611 = happySpecReduce_1  227 happyReduction_611-happyReduction_611 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "stdcall")-	)-happyReduction_611 _  = notHappyAtAll --happyReduce_612 = happySpecReduce_1  227 happyReduction_612-happyReduction_612 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "ccall")-	)-happyReduction_612 _  = notHappyAtAll --happyReduce_613 = happySpecReduce_1  227 happyReduction_613-happyReduction_613 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "capi")-	)-happyReduction_613 _  = notHappyAtAll --happyReduce_614 = happySpecReduce_1  227 happyReduction_614-happyReduction_614 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "prim")-	)-happyReduction_614 _  = notHappyAtAll --happyReduce_615 = happySpecReduce_1  227 happyReduction_615-happyReduction_615 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "group")-	)-happyReduction_615 _  = notHappyAtAll --happyReduce_616 = happySpecReduce_1  228 happyReduction_616-happyReduction_616 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "!")-	)-happyReduction_616 _  = notHappyAtAll --happyReduce_617 = happySpecReduce_1  228 happyReduction_617-happyReduction_617 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit ".")-	)-happyReduction_617 _  = notHappyAtAll --happyReduce_618 = happySpecReduce_1  228 happyReduction_618-happyReduction_618 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn147-		 (sL (getLoc happy_var_1) (fsLit "*")-	)-happyReduction_618 _  = notHappyAtAll --happyReduce_619 = happySpecReduce_1  229 happyReduction_619-happyReduction_619 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_619 _  = notHappyAtAll --happyReduce_620 = happySpecReduce_1  229 happyReduction_620-happyReduction_620 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkQual dataName (getQCONID happy_var_1)-	)-happyReduction_620 _  = notHappyAtAll --happyReduce_621 = happySpecReduce_1  229 happyReduction_621-happyReduction_621 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $! mkQual dataName (getPREFIXQCONSYM happy_var_1)-	)-happyReduction_621 _  = notHappyAtAll --happyReduce_622 = happySpecReduce_1  230 happyReduction_622-happyReduction_622 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ mkUnqual dataName (getCONID happy_var_1)-	)-happyReduction_622 _  = notHappyAtAll --happyReduce_623 = happySpecReduce_1  231 happyReduction_623-happyReduction_623 (HappyAbsSyn17  happy_var_1)-	 =  HappyAbsSyn17-		 (happy_var_1-	)-happyReduction_623 _  = notHappyAtAll --happyReduce_624 = happySpecReduce_1  231 happyReduction_624-happyReduction_624 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ mkQual dataName (getQCONSYM happy_var_1)-	)-happyReduction_624 _  = notHappyAtAll --happyReduce_625 = happySpecReduce_1  232 happyReduction_625-happyReduction_625 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ mkUnqual dataName (getCONSYM happy_var_1)-	)-happyReduction_625 _  = notHappyAtAll --happyReduce_626 = happySpecReduce_1  232 happyReduction_626-happyReduction_626 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn17-		 (sL (getLoc happy_var_1) $ consDataCon_RDR-	)-happyReduction_626 _  = notHappyAtAll --happyReduce_627 = happySpecReduce_1  233 happyReduction_627-happyReduction_627 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn233-		 (sL (getLoc happy_var_1) $ HsChar       $ getCHAR happy_var_1-	)-happyReduction_627 _  = notHappyAtAll --happyReduce_628 = happySpecReduce_1  233 happyReduction_628-happyReduction_628 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn233-		 (sL (getLoc happy_var_1) $ HsString     $ getSTRING happy_var_1-	)-happyReduction_628 _  = notHappyAtAll --happyReduce_629 = happySpecReduce_1  233 happyReduction_629-happyReduction_629 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn233-		 (sL (getLoc happy_var_1) $ HsIntPrim    $ getPRIMINTEGER happy_var_1-	)-happyReduction_629 _  = notHappyAtAll --happyReduce_630 = happySpecReduce_1  233 happyReduction_630-happyReduction_630 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn233-		 (sL (getLoc happy_var_1) $ HsWordPrim    $ getPRIMWORD happy_var_1-	)-happyReduction_630 _  = notHappyAtAll --happyReduce_631 = happySpecReduce_1  233 happyReduction_631-happyReduction_631 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn233-		 (sL (getLoc happy_var_1) $ HsCharPrim   $ getPRIMCHAR happy_var_1-	)-happyReduction_631 _  = notHappyAtAll --happyReduce_632 = happySpecReduce_1  233 happyReduction_632-happyReduction_632 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn233-		 (sL (getLoc happy_var_1) $ HsStringPrim $ getPRIMSTRING happy_var_1-	)-happyReduction_632 _  = notHappyAtAll --happyReduce_633 = happySpecReduce_1  233 happyReduction_633-happyReduction_633 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn233-		 (sL (getLoc happy_var_1) $ HsFloatPrim  $ getPRIMFLOAT happy_var_1-	)-happyReduction_633 _  = notHappyAtAll --happyReduce_634 = happySpecReduce_1  233 happyReduction_634-happyReduction_634 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn233-		 (sL (getLoc happy_var_1) $ HsDoublePrim $ getPRIMDOUBLE happy_var_1-	)-happyReduction_634 _  = notHappyAtAll --happyReduce_635 = happySpecReduce_1  234 happyReduction_635-happyReduction_635 _-	 =  HappyAbsSyn20-		 (()-	)--happyReduce_636 = happyMonadReduce 1 234 happyReduction_636-happyReduction_636 (_ `HappyStk`-	happyRest) tk-	 = happyThen (( popContext)-	) (\r -> happyReturn (HappyAbsSyn20 r))--happyReduce_637 = happySpecReduce_1  235 happyReduction_637-happyReduction_637 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn235-		 (sL (getLoc happy_var_1) $ mkModuleNameFS (getCONID happy_var_1)-	)-happyReduction_637 _  = notHappyAtAll --happyReduce_638 = happySpecReduce_1  235 happyReduction_638-happyReduction_638 (HappyTerminal happy_var_1)-	 =  HappyAbsSyn235-		 (sL (getLoc happy_var_1) $ let (mod,c) = getQCONID happy_var_1 in-                                  mkModuleNameFS-                                   (mkFastString-                                     (unpackFS mod ++ '.':unpackFS c))-	)-happyReduction_638 _  = notHappyAtAll --happyReduce_639 = happySpecReduce_2  236 happyReduction_639-happyReduction_639 _-	(HappyAbsSyn48  happy_var_1)-	 =  HappyAbsSyn48-		 (happy_var_1 + 1-	)-happyReduction_639 _ _  = notHappyAtAll --happyReduce_640 = happySpecReduce_1  236 happyReduction_640-happyReduction_640 _-	 =  HappyAbsSyn48-		 (1-	)--happyReduce_641 = happyMonadReduce 1 237 happyReduction_641-happyReduction_641 ((HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( return (sL (getLoc happy_var_1) (HsDocString (mkFastString (getDOCNEXT happy_var_1)))))-	) (\r -> happyReturn (HappyAbsSyn237 r))--happyReduce_642 = happyMonadReduce 1 238 happyReduction_642-happyReduction_642 ((HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( return (sL (getLoc happy_var_1) (HsDocString (mkFastString (getDOCPREV happy_var_1)))))-	) (\r -> happyReturn (HappyAbsSyn237 r))--happyReduce_643 = happyMonadReduce 1 239 happyReduction_643-happyReduction_643 ((HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen ((-      let string = getDOCNAMED happy_var_1 -          (name, rest) = break isSpace string-      in return (sL (getLoc happy_var_1) (name, HsDocString (mkFastString rest))))-	) (\r -> happyReturn (HappyAbsSyn239 r))--happyReduce_644 = happyMonadReduce 1 240 happyReduction_644-happyReduction_644 ((HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( let (n, doc) = getDOCSECTION happy_var_1 in-        return (sL (getLoc happy_var_1) (n, HsDocString (mkFastString doc))))-	) (\r -> happyReturn (HappyAbsSyn240 r))--happyReduce_645 = happyMonadReduce 1 241 happyReduction_645-happyReduction_645 ((HappyTerminal happy_var_1) `HappyStk`-	happyRest) tk-	 = happyThen (( let string = getDOCNEXT happy_var_1 in-                     return (Just (sL (getLoc happy_var_1) (HsDocString (mkFastString string)))))-	) (\r -> happyReturn (HappyAbsSyn19 r))--happyReduce_646 = happySpecReduce_1  242 happyReduction_646-happyReduction_646 (HappyAbsSyn237  happy_var_1)-	 =  HappyAbsSyn19-		 (Just happy_var_1-	)-happyReduction_646 _  = notHappyAtAll --happyReduce_647 = happySpecReduce_0  242 happyReduction_647-happyReduction_647  =  HappyAbsSyn19-		 (Nothing-	)--happyReduce_648 = happySpecReduce_1  243 happyReduction_648-happyReduction_648 (HappyAbsSyn237  happy_var_1)-	 =  HappyAbsSyn19-		 (Just happy_var_1-	)-happyReduction_648 _  = notHappyAtAll --happyReduce_649 = happySpecReduce_0  243 happyReduction_649-happyReduction_649  =  HappyAbsSyn19-		 (Nothing-	)--happyNewToken action sts stk-	= lexer(\tk -> -	let cont i = action i i tk (HappyState action) sts stk in-	case tk of {-	L _ ITeof -> action 381 381 tk (HappyState action) sts stk;-	L _ ITunderscore -> cont 244;-	L _ ITas -> cont 245;-	L _ ITcase -> cont 246;-	L _ ITclass -> cont 247;-	L _ ITdata -> cont 248;-	L _ ITdefault -> cont 249;-	L _ ITderiving -> cont 250;-	L _ ITdo -> cont 251;-	L _ ITelse -> cont 252;-	L _ IThiding -> cont 253;-	L _ ITif -> cont 254;-	L _ ITimport -> cont 255;-	L _ ITin -> cont 256;-	L _ ITinfix -> cont 257;-	L _ ITinfixl -> cont 258;-	L _ ITinfixr -> cont 259;-	L _ ITinstance -> cont 260;-	L _ ITlet -> cont 261;-	L _ ITmodule -> cont 262;-	L _ ITnewtype -> cont 263;-	L _ ITof -> cont 264;-	L _ ITqualified -> cont 265;-	L _ ITthen -> cont 266;-	L _ ITtype -> cont 267;-	L _ ITwhere -> cont 268;-	L _ ITscc -> cont 269;-	L _ ITforall -> cont 270;-	L _ ITforeign -> cont 271;-	L _ ITexport -> cont 272;-	L _ ITlabel -> cont 273;-	L _ ITdynamic -> cont 274;-	L _ ITsafe -> cont 275;-	L _ ITinterruptible -> cont 276;-	L _ ITunsafe -> cont 277;-	L _ ITmdo -> cont 278;-	L _ ITfamily -> cont 279;-	L _ ITstdcallconv -> cont 280;-	L _ ITccallconv -> cont 281;-	L _ ITcapiconv -> cont 282;-	L _ ITprimcallconv -> cont 283;-	L _ ITproc -> cont 284;-	L _ ITrec -> cont 285;-	L _ ITgroup -> cont 286;-	L _ ITby -> cont 287;-	L _ ITusing -> cont 288;-	L _ (ITinline_prag _ _) -> cont 289;-	L _ ITspec_prag -> cont 290;-	L _ (ITspec_inline_prag _) -> cont 291;-	L _ ITsource_prag -> cont 292;-	L _ ITrules_prag -> cont 293;-	L _ ITcore_prag -> cont 294;-	L _ ITscc_prag -> cont 295;-	L _ ITgenerated_prag -> cont 296;-	L _ ITdeprecated_prag -> cont 297;-	L _ ITwarning_prag -> cont 298;-	L _ ITunpack_prag -> cont 299;-	L _ ITnounpack_prag -> cont 300;-	L _ ITann_prag -> cont 301;-	L _ ITvect_prag -> cont 302;-	L _ ITvect_scalar_prag -> cont 303;-	L _ ITnovect_prag -> cont 304;-	L _ ITctype -> cont 305;-	L _ ITclose_prag -> cont 306;-	L _ ITdotdot -> cont 307;-	L _ ITcolon -> cont 308;-	L _ ITdcolon -> cont 309;-	L _ ITequal -> cont 310;-	L _ ITlam -> cont 311;-	L _ ITlcase -> cont 312;-	L _ ITvbar -> cont 313;-	L _ ITlarrow -> cont 314;-	L _ ITrarrow -> cont 315;-	L _ ITat -> cont 316;-	L _ ITtilde -> cont 317;-	L _ ITtildehsh -> cont 318;-	L _ ITdarrow -> cont 319;-	L _ ITminus -> cont 320;-	L _ ITbang -> cont 321;-	L _ ITstar -> cont 322;-	L _ ITlarrowtail -> cont 323;-	L _ ITrarrowtail -> cont 324;-	L _ ITLarrowtail -> cont 325;-	L _ ITRarrowtail -> cont 326;-	L _ ITdot -> cont 327;-	L _ ITocurly -> cont 328;-	L _ ITccurly -> cont 329;-	L _ ITvocurly -> cont 330;-	L _ ITvccurly -> cont 331;-	L _ ITobrack -> cont 332;-	L _ ITcbrack -> cont 333;-	L _ ITopabrack -> cont 334;-	L _ ITcpabrack -> cont 335;-	L _ IToparen -> cont 336;-	L _ ITcparen -> cont 337;-	L _ IToubxparen -> cont 338;-	L _ ITcubxparen -> cont 339;-	L _ IToparenbar -> cont 340;-	L _ ITcparenbar -> cont 341;-	L _ ITsemi -> cont 342;-	L _ ITcomma -> cont 343;-	L _ ITbackquote -> cont 344;-	L _ ITsimpleQuote -> cont 345;-	L _ (ITvarid    _) -> cont 346;-	L _ (ITconid    _) -> cont 347;-	L _ (ITvarsym   _) -> cont 348;-	L _ (ITconsym   _) -> cont 349;-	L _ (ITqvarid   _) -> cont 350;-	L _ (ITqconid   _) -> cont 351;-	L _ (ITqvarsym  _) -> cont 352;-	L _ (ITqconsym  _) -> cont 353;-	L _ (ITprefixqvarsym  _) -> cont 354;-	L _ (ITprefixqconsym  _) -> cont 355;-	L _ (ITdupipvarid   _) -> cont 356;-	L _ (ITchar     _) -> cont 357;-	L _ (ITstring   _) -> cont 358;-	L _ (ITinteger  _) -> cont 359;-	L _ (ITrational _) -> cont 360;-	L _ (ITprimchar   _) -> cont 361;-	L _ (ITprimstring _) -> cont 362;-	L _ (ITprimint    _) -> cont 363;-	L _ (ITprimword  _) -> cont 364;-	L _ (ITprimfloat  _) -> cont 365;-	L _ (ITprimdouble _) -> cont 366;-	L _ (ITdocCommentNext _) -> cont 367;-	L _ (ITdocCommentPrev _) -> cont 368;-	L _ (ITdocCommentNamed _) -> cont 369;-	L _ (ITdocSection _ _) -> cont 370;-	L _ ITopenExpQuote -> cont 371;-	L _ ITopenPatQuote -> cont 372;-	L _ ITopenTypQuote -> cont 373;-	L _ ITopenDecQuote -> cont 374;-	L _ ITcloseQuote -> cont 375;-	L _ (ITidEscape _) -> cont 376;-	L _ ITparenEscape -> cont 377;-	L _ ITtyQuote -> cont 378;-	L _ (ITquasiQuote _) -> cont 379;-	L _ (ITqQuasiQuote _) -> cont 380;-	_ -> happyError' tk-	})--happyError_ 381 tk = happyError' tk-happyError_ _ tk = happyError' tk--happyThen :: () => P a -> (a -> P b) -> P b-happyThen = (>>=)-happyReturn :: () => a -> P a-happyReturn = (return)-happyThen1 = happyThen-happyReturn1 :: () => a -> P a-happyReturn1 = happyReturn-happyError' :: () => ((Located Token)) -> P a-happyError' tk = (\token -> happyError) tk--parseModule = happySomeParser where-  happySomeParser = happyThen (happyParse action_0) (\x -> case x of {HappyAbsSyn16 z -> happyReturn z; _other -> notHappyAtAll })--parseStmt = happySomeParser where-  happySomeParser = happyThen (happyParse action_1) (\x -> case x of {HappyAbsSyn184 z -> happyReturn z; _other -> notHappyAtAll })--parseIdentifier = happySomeParser where-  happySomeParser = happyThen (happyParse action_2) (\x -> case x of {HappyAbsSyn17 z -> happyReturn z; _other -> notHappyAtAll })--parseType = happySomeParser where-  happySomeParser = happyThen (happyParse action_3) (\x -> case x of {HappyAbsSyn95 z -> happyReturn z; _other -> notHappyAtAll })--parseHeader = happySomeParser where-  happySomeParser = happyThen (happyParse action_4) (\x -> case x of {HappyAbsSyn16 z -> happyReturn z; _other -> notHappyAtAll })--partialStatement = happySomeParser where-  happySomeParser = happyThen (happyParse action_5) (\x -> case x of {HappyAbsSyn185 z -> happyReturn z; _other -> notHappyAtAll })--partialImport = happySomeParser where-  happySomeParser = happyThen (happyParse action_6) (\x -> case x of {HappyAbsSyn40 z -> happyReturn z; _other -> notHappyAtAll })--partialDeclaration = happySomeParser where-  happySomeParser = happyThen (happyParse action_7) (\x -> case x of {HappyAbsSyn51 z -> happyReturn z; _other -> notHappyAtAll })--partialExpression = happySomeParser where-  happySomeParser = happyThen (happyParse action_8) (\x -> case x of {HappyAbsSyn143 z -> happyReturn z; _other -> notHappyAtAll })--partialTypeSignature = happySomeParser where-  happySomeParser = happyThen (happyParse action_9) (\x -> case x of {HappyAbsSyn15 z -> happyReturn z; _other -> notHappyAtAll })--fullModule = happySomeParser where-  happySomeParser = happyThen (happyParse action_10) (\x -> case x of {HappyAbsSyn16 z -> happyReturn z; _other -> notHappyAtAll })--fullExpression = happySomeParser where-  happySomeParser = happyThen (happyParse action_11) (\x -> case x of {HappyAbsSyn143 z -> happyReturn z; _other -> notHappyAtAll })--happySeq = happyDontSeq---happyError :: P a-happyError = srcParseFail--getVARID        (L _ (ITvarid    x)) = x-getCONID        (L _ (ITconid    x)) = x-getVARSYM       (L _ (ITvarsym   x)) = x-getCONSYM       (L _ (ITconsym   x)) = x-getQVARID       (L _ (ITqvarid   x)) = x-getQCONID       (L _ (ITqconid   x)) = x-getQVARSYM      (L _ (ITqvarsym  x)) = x-getQCONSYM      (L _ (ITqconsym  x)) = x-getPREFIXQVARSYM (L _ (ITprefixqvarsym  x)) = x-getPREFIXQCONSYM (L _ (ITprefixqconsym  x)) = x-getIPDUPVARID   (L _ (ITdupipvarid   x)) = x-getCHAR         (L _ (ITchar     x)) = x-getSTRING       (L _ (ITstring   x)) = x-getINTEGER      (L _ (ITinteger  x)) = x-getRATIONAL     (L _ (ITrational x)) = x-getPRIMCHAR     (L _ (ITprimchar   x)) = x-getPRIMSTRING   (L _ (ITprimstring x)) = x-getPRIMINTEGER  (L _ (ITprimint    x)) = x-getPRIMWORD     (L _ (ITprimword x)) = x-getPRIMFLOAT    (L _ (ITprimfloat  x)) = x-getPRIMDOUBLE   (L _ (ITprimdouble x)) = x-getTH_ID_SPLICE (L _ (ITidEscape x)) = x-getINLINE       (L _ (ITinline_prag inl conl)) = (inl,conl)-getSPEC_INLINE  (L _ (ITspec_inline_prag True))  = (Inline,  FunLike)-getSPEC_INLINE  (L _ (ITspec_inline_prag False)) = (NoInline,FunLike)--getDOCNEXT (L _ (ITdocCommentNext x)) = x-getDOCPREV (L _ (ITdocCommentPrev x)) = x-getDOCNAMED (L _ (ITdocCommentNamed x)) = x-getDOCSECTION (L _ (ITdocSection n x)) = (n, x)--getSCC :: Located Token -> P FastString-getSCC lt = do let s = getSTRING lt-                   err = "Spaces are not allowed in SCCs"-               -- We probably actually want to be more restrictive than this-               if ' ' `elem` unpackFS s-                   then failSpanMsgP (getLoc lt) (text err)-                   else return s---- Utilities for combining source spans-comb2 :: Located a -> Located b -> SrcSpan-comb2 a b = a `seq` b `seq` combineLocs a b--comb3 :: Located a -> Located b -> Located c -> SrcSpan-comb3 a b c = a `seq` b `seq` c `seq`-    combineSrcSpans (getLoc a) (combineSrcSpans (getLoc b) (getLoc c))--comb4 :: Located a -> Located b -> Located c -> Located d -> SrcSpan-comb4 a b c d = a `seq` b `seq` c `seq` d `seq`-    (combineSrcSpans (getLoc a) $ combineSrcSpans (getLoc b) $-                combineSrcSpans (getLoc c) (getLoc d))---- strict constructor version:-{-# INLINE sL #-}-sL :: SrcSpan -> a -> Located a-sL span a = span `seq` a `seq` L span a---- Make a source location for the file.  We're a bit lazy here and just--- make a point SrcSpan at line 1, column 0.  Strictly speaking we should--- try to find the span of the whole file (ToDo).-fileSrcSpan :: P SrcSpan-fileSrcSpan = do -  l <- getSrcLoc; -  let loc = mkSrcLoc (srcLocFile l) 1 1;-  return (mkSrcSpan loc loc)---- Hint about the MultiWayIf extension-hintMultiWayIf :: SrcSpan -> P ()-hintMultiWayIf span = do-  mwiEnabled <- liftM ((Opt_MultiWayIf `xopt`) . dflags) getPState-  unless mwiEnabled $ parseErrorSDoc span $-    text "Multi-way if-expressions need -XMultiWayIf turned on"-{-# LINE 1 "templates/GenericTemplate.hs" #-}-{-# LINE 1 "templates/GenericTemplate.hs" #-}-{-# LINE 1 "<built-in>" #-}-{-# LINE 1 "<command-line>" #-}-{-# LINE 1 "templates/GenericTemplate.hs" #-}--- Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp --{-# LINE 13 "templates/GenericTemplate.hs" #-}--{-# LINE 46 "templates/GenericTemplate.hs" #-}---------{-# LINE 67 "templates/GenericTemplate.hs" #-}--{-# LINE 77 "templates/GenericTemplate.hs" #-}--{-# LINE 86 "templates/GenericTemplate.hs" #-}--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 (1), 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--{-# LINE 155 "templates/GenericTemplate.hs" #-}---------------------------------------------------------------------------------- HappyState data type (not arrays)----newtype HappyState b c = HappyState-        (Int ->                    -- token number-         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 - ((1) :: 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------             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 - ((1) :: Int)) t--happyDropStk (0) l = l-happyDropStk n (x `HappyStk` xs) = happyDropStk (n - ((1)::Int)) xs---------------------------------------------------------------------------------- Moving to a new state after a reduction--{-# LINE 256 "templates/GenericTemplate.hs" #-}-happyGoto action j tk st = action j j tk (HappyState action)----------------------------------------------------------------------------------- Error recovery ((1) is the error token)---- parse error if we are in recovery and we fail again-happyFail (1) tk old_st _ stk@(x `HappyStk` _) =-     let i = (case x of { HappyErrorToken (i) -> i }) in---      trace "failing" $ -        happyError_ 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  (1) tk old_st (((HappyState (action))):(sts)) -                                                (saved_tok `HappyStk` _ `HappyStk` stk) =---      trace ("discarding state, depth " ++ show (length stk))  $-        action (1) (1) tk (HappyState (action)) sts ((saved_tok`HappyStk`stk))--}---- Enter error recovery: generate an error token,---                       save the old token and carry on.-happyFail  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 = 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 `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.--{-# LINE 322 "templates/GenericTemplate.hs" #-}-{-# 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.
IHaskell/IPython.hs view
@@ -6,44 +6,114 @@   runIHaskell,   setupIPythonProfile,   ipythonVersion,-  parseVersion+  parseVersion,+  ipythonInstalled,+  installIPython ) where  import ClassyPrelude import Prelude (read, reads)-import Shelly hiding (find, trace)+import Shelly hiding (find, trace, path) import System.Argv0 import System.Directory import qualified Filesystem.Path.CurrentOS as FS import Data.List.Utils (split) import Data.String.Utils (rstrip)+import Text.Printf  import qualified System.IO.Strict as StrictIO -import qualified IHaskell.Config as Config+import qualified Paths_ihaskell as Paths+import qualified Codec.Archive.Tar as Tar +-- | Which commit of IPython we are on.+ipythonCommit :: Text+ipythonCommit = "1faf2f6e77fa31f4533e3edbe101c38ddf8943d8"+ -- | Run IPython with any arguments. ipython :: Bool         -- ^ Whether to suppress output.         -> [Text]       -- ^ IPython command line arguments.         -> Sh String    -- ^ IPython output. ipython suppress args = do-  path <- which "ipython"+  (_, ipythonDir) <- ihaskellDirs+  let ipythonPath = fromText $ ipythonDir ++ "/bin/ipython"+  runHandles ipythonPath args handles doNothing+  where handles = [InHandle Inherit, outHandle suppress, errorHandle suppress]+        outHandle True = OutHandle CreatePipe+        outHandle False = OutHandle Inherit+        errorHandle True =  ErrorHandle CreatePipe+        errorHandle False = ErrorHandle Inherit+        doNothing _ stdout _ = if suppress +                                then liftIO $ StrictIO.hGetContents stdout+                                else return ""++-- | Run while suppressing all output.+quietRun path args = runHandles path args handles nothing+  where+    handles =  [InHandle Inherit, OutHandle CreatePipe, ErrorHandle CreatePipe]+    nothing _ _ _ = return ()++-- | Return the data directory for IHaskell and the IPython subdirectory. +ihaskellDirs :: Sh (Text, Text)+ihaskellDirs = do+  home <- maybe (error "$HOME not defined.") id <$> get_env "HOME" :: Sh Text+  let ihaskellDir = home ++ "/.ihaskell"+      ipythonDir = ihaskellDir ++ "/ipython"++  -- Make sure the directories exist.+  mkdir_p $ fromText ipythonDir++  return (ihaskellDir, ipythonDir)++-- | Install IPython from source.+installIPython :: IO ()+installIPython = void . shellyNoDir $ do+  (ihaskellDir, ipythonDir) <- ihaskellDirs++  -- Install all Python dependencies.+  pipPath <- path "pip"+  let pipDeps = ["pyzmq", "tornado", "jinja2"]+      installDep dep = do+        putStrLn $ "Installing dependency: " ++ dep +        quietRun pipPath ["install", "--user", dep]+  mapM_ installDep pipDeps++  -- Get the IPython source.+  gitPath <- path "git"+  putStrLn "Downloading IPython... (this may take a while)"+  cd $ fromText ihaskellDir+  quietRun gitPath ["clone", "--recursive", "https://github.com/ipython/ipython.git", "ipython-src"]+  cd "ipython-src"+  quietRun gitPath ["checkout", ipythonCommit]++  -- Install IPython locally.+  pythonPath <- path "python"+  putStrLn "Installing IPython."+  run_ pythonPath ["setup.py", "install", "--prefix=" ++ ipythonDir]+  cd ".."++-- | Check whether IPython is properly installed.+ipythonInstalled :: IO Bool+ipythonInstalled = shellyNoDir $ do+  (_, ipythonDir) <- ihaskellDirs+  let ipythonPath = ipythonDir ++ "/bin/ipython"+  test_f $ fromText ipythonPath++-- | Get the path to an executable. If it doensn't exist, fail with an+-- error message complaining about it.+path :: Text -> Sh FilePath+path exe = do+  path <- which $ fromText exe   case path of     Nothing -> do-      putStrLn "Could not find `ipython` executable."-      fail "`ipython` not on $PATH."-    Just ipythonPath -> runHandles ipythonPath args handles doNothing-      where handles = [InHandle Inherit, outHandle suppress, ErrorHandle Inherit]-            outHandle True = OutHandle CreatePipe-            outHandle False = OutHandle Inherit-            doNothing _ stdout _ = if suppress -                                   then liftIO $ StrictIO.hGetContents stdout-                                   else return ""+      putStrLn $ "Could not find `" ++ exe ++ "` executable."+      fail $ "`" ++ unpack exe ++ "` not on $PATH."+    Just exePath -> return exePath  -- | Use the `ipython --version` command to figure out the version. -- Return a tuple with (major, minor, patch). ipythonVersion :: IO (Int, Int, Int)-ipythonVersion = shelly $ do+ipythonVersion = shellyNoDir $ do   [major, minor, patch] <- parseVersion <$>  ipython True ["--version"]   return (major, minor, patch) @@ -59,48 +129,51 @@            -> String    -- ^ IPython app name.            -> [String]  -- ^ Arguments to IPython.            -> IO ()-runIHaskell profile app args = void . shelly . ipython False $ [pack app, "--profile", pack profile] ++ map pack args+runIHaskell profile app args = void . shellyNoDir $ do+  -- Try to locate the profile. Do not die if it doesn't exist.+  errExit False $ ipython True ["locate", "profile", pack profile] +  -- If the profile doesn't exist, create it.+  exitCode <- lastExitCode+  when (exitCode /= 0) $ liftIO $ do+    putStrLn "Creating IPython profile."+    setupIPythonProfile profile++  -- Run the IHaskell command.+  ipython False $ map pack $ [app, "--profile", profile] ++ args+ -- | Create the IPython profile. setupIPythonProfile :: String -- ^ IHaskell profile name.                     -> IO ()-setupIPythonProfile profile = shelly $ do+setupIPythonProfile profile = shellyNoDir $ do   -- Create the IPython profile.-  void $ ipython False ["profile", "create", pack profile]+  void $ ipython True ["profile", "create", pack profile]    -- Find the IPython profile directory. Make sure to get rid of trailing   -- newlines from the output of the `ipython locate` call.   ipythonDir <- pack <$> rstrip <$> ipython True ["locate"]   let profileDir = ipythonDir ++ "/profile_" ++ pack profile ++ "/" -  path <- getIHaskellPath-  writeConfigFilesTo profileDir path---- | Write IPython configuration files to the profile directory.-writeConfigFilesTo :: Text      -- ^ Profile directory to write to. Must have a trailing slash.-                   -> String    -- ^ Path to IHaskell executable.-                   -> Sh ()-writeConfigFilesTo profileDir ihaskellPath = do-    writeFile (conf "ipython_config.py")          $ Config.ipython ihaskellPath-    writeFile (conf "ipython_notebook_config.py")   Config.notebook-    writeFile (conf "ipython_console_config.py")    Config.console-    writeFile (conf "ipython_qtconsole_config.py")  Config.qtconsole--    -- The custom directory many not exist, in which case we'll create it.-    mkdir_p (conf "static/custom/")-    writeFile (conf "static/custom/custom.js")      Config.customjs+  liftIO $ copyProfile profileDir+  insertIHaskellPath profileDir -    -- Make directory for images.-    mkdir_p (conf "static/base/images")+-- | Copy the profile files into the IPython profile. +copyProfile :: Text -> IO ()+copyProfile profileDir = do+  profileTar <- Paths.getDataFileName "profile/profile.tar"+  Tar.extract (unpack profileDir) profileTar  -    -- The notebook/js directory many not exist, in which case we'll create it.-    mkdir_p (conf "static/notebook/")-    mkdir_p (conf "static/notebook/js")-    forM_ Config.notebookJavascript $ \(file, content) ->-      writeFile (conf "static/notebook/js/" ++ file) content+-- | Insert the IHaskell path into the IPython configuration.+insertIHaskellPath :: Text -> Sh ()+insertIHaskellPath profileDir = do+  path <- getIHaskellPath+  let filename = profileDir ++ "ipython_config.py"+      template = "exe = '%s'.replace(' ', '\\\\ ')"+      exeLine = printf template $ unpack path :: String -  where-    conf filename = fromText $ profileDir ++ filename+  liftIO $ do+    contents <- StrictIO.readFile $ unpack filename+    writeFile (fromText filename) $ exeLine ++ "\n" ++ contents  -- | Get the absolute path to this IHaskell executable. getIHaskellPath :: Sh String
IHaskell/Message/Writer.hs view
@@ -81,6 +81,10 @@                             "restart" .= restart                            ] +  toJSON ClearOutput{wait = wait} = object [+                            "wait" .= wait+                           ]+    toJSON body = error $ "Do not know how to convert to JSON for message " ++ show body 
IHaskell/Types.hs view
@@ -108,6 +108,7 @@                  | ObjectInfoReplyMessage                  | ShutdownRequestMessage                  | ShutdownReplyMessage+                 | ClearOutputMessage  instance Show MessageType where   show KernelInfoReplyMessage     = "kernel_info_reply"@@ -125,6 +126,7 @@   show ObjectInfoReplyMessage     = "object_info_reply"   show ShutdownRequestMessage     = "shutdown_request"   show ShutdownReplyMessage       = "shutdown_reply"+  show ClearOutputMessage         = "clear_output"  instance FromJSON MessageType where   parseJSON (String s) = case s of@@ -143,6 +145,7 @@     "object_info_reply"   -> return ObjectInfoReplyMessage     "shutdown_request"    -> return ShutdownRequestMessage     "shutdown_reply"      -> return ShutdownReplyMessage+    "clear_output"        -> return ClearOutputMessage      _                     -> fail ("Unknown message type: " ++ show s)   parseJSON _ = fail "Must be a string."@@ -222,22 +225,7 @@      completionText :: ByteString,      completionStatus :: Bool   }-      {- ^-# The list of all matches to the completion request, such as-# ['a.isalnum', 'a.isalpha'] for the above example.-'matches' : list, -# the substring of the matched text-# this is typically the common prefix of the matches,-# and the text that is already in the block that would be replaced by the full completion.-# This would be 'a.is' in the above example.-'text' : str,--# status should be 'ok' unless an exception was raised during the request,-# in which case it should be 'error', along with the usual error message content-# in other messages.-'status' : 'ok'-} -}   | ObjectInfoRequest {       header :: MessageHeader,        objectName :: ByteString,  -- ^ Name of object being searched for.@@ -245,6 +233,7 @@                                 -- 0 is equivalent to foo?, 1 is equivalent                                 -- to foo??.     }+   | ObjectInfoReply {       header :: MessageHeader,        objectName :: ByteString,       -- ^ Name of object which was searched for.@@ -262,6 +251,11 @@       restartPending :: Bool    -- ^ Whether this shutdown precedes a restart.     } +  | ClearOutput {+      header :: MessageHeader,+      wait :: Bool -- ^ Whether to wait to redraw until there is more output.+  }+     deriving Show  -- | Possible statuses in the execution reply messages.@@ -283,12 +277,22 @@ instance Serialize MimeType  -- | Possible MIME types for the display data.-data MimeType = PlainText | MimeHtml deriving (Eq, Typeable, Generic)+data MimeType = PlainText+              | MimeHtml+              | MimePng+              | MimeJpg+              | MimeSvg+              | MimeLatex+              deriving (Eq, Typeable, Generic)   instance Show MimeType where   show PlainText = "text/plain"   show MimeHtml  = "text/html"+  show MimePng   = "image/png" +  show MimeJpg   = "image/jpeg"+  show MimeSvg   = "image/svg+xml"+  show MimeLatex = "text/latex"  -- | Input and output streams. data StreamType = Stdin | Stdout deriving Show
Main.hs view
@@ -17,7 +17,7 @@ import IHaskell.ZeroMQ import qualified IHaskell.Message.UUID as UUID import IHaskell.Eval.Evaluate-import IHaskell.Eval.Completion (makeCompletions)+import IHaskell.Eval.Completion (complete) import IHaskell.Eval.Info import qualified Data.ByteString.Char8 as Chars import IHaskell.IPython@@ -31,10 +31,8 @@  main ::  IO () main = do-  (major, minor, patch) <- ipythonVersion-  when (major < 1) $ do-    void $ printf "Expecting IPython version 1.*, found version %d.%d.%d.\n" major minor patch-    error "Incorrect ipython --version."+  installed <- ipythonInstalled+  unless installed installIPython    args <- map unpack <$> getArgs   case args of@@ -96,7 +94,7 @@   }  -- | Duplicate a message header, giving it a new UUID and message type.-dupHeader :: MessageHeader -> MessageType -> Interpreter MessageHeader+dupHeader :: MessageHeader -> MessageType -> IO MessageHeader dupHeader header messageType = do   uuid <- liftIO UUID.random @@ -145,20 +143,48 @@   -- All the headers are copies of the reply header with a different   -- message type, because this preserves the session ID, parent header,   -- and other important information.-  busyHeader <- dupHeader replyHeader StatusMessage+  busyHeader <- liftIO $ dupHeader replyHeader StatusMessage   send $ PublishStatus busyHeader Busy    -- Construct a function for publishing output as this is going.-  let publish :: [DisplayData] -> Interpreter ()-      publish outputs = do+  -- This function accepts a boolean indicating whether this is the final+  -- output and the thing to display. Store the final outputs in a list so+  -- that when we receive an updated non-final output, we can clear the+  -- entire output and re-display with the updated output.+  displayed <- liftIO $ newMVar []+  updateNeeded <- liftIO $ newMVar False+  let clearOutput = do+        header <- dupHeader replyHeader ClearOutputMessage+        send $ ClearOutput header True++      sendOutput outs = do         header <- dupHeader replyHeader DisplayDataMessage-        send $ PublishDisplayData header "haskell" outputs+        send $ PublishDisplayData header "haskell" outs +      publish :: Bool -> [DisplayData] -> IO ()+      publish final outputs = do+        -- If necessary, clear all previous output and redraw.+        clear <- readMVar updateNeeded+        when clear $ do+          clearOutput+          disps <- readMVar displayed+          mapM_ sendOutput $ reverse disps++        -- Draw this message.+        sendOutput outputs++        -- If this is the final message, add it to the list of completed+        -- messages. If it isn't, make sure we clear it later by marking+        -- update needed as true.+        modifyMVar_ updateNeeded (const $ return $ not final)+        when final $+          modifyMVar_ displayed (return . (outputs:))+   -- Run code and publish to the frontend as we go.   evaluate execCount (Chars.unpack code) publish    -- Notify the frontend that we're done computing.-  idleHeader <- dupHeader replyHeader StatusMessage+  idleHeader <- liftIO $ dupHeader replyHeader StatusMessage   send $ PublishStatus idleHeader Idle    -- Increment the execution counter in the kernel state.@@ -170,9 +196,11 @@   })  -replyTo _ creq@CompleteRequest{} replyHeader state = do-    cr <- makeCompletions replyHeader creq-    return (state,  cr)+replyTo _ req@CompleteRequest{} replyHeader state = do+    (matchedText, completions) <- complete (Chars.unpack $ getCodeLine req) (getCursorPos req)++    let reply =  CompleteReply replyHeader (map Chars.pack completions) (Chars.pack matchedText) (getCodeLine req) True+    return (state,  reply)  -- | Reply to the object_info_request message. Given an object name, return -- | the associated type calculated by GHC.
Setup.hs view
@@ -1,17 +1,2 @@ import Distribution.Simple-import System.Cmd-import Control.Monad--main :: IO ()-main = defaultMainWithHooks simpleUserHooks{-    preConf = \args confFlags -> do-      buildParser-      preConf simpleUserHooks args confFlags,-    postInst = \args flags descr buildInfo -> do-      postInst simpleUserHooks args flags descr buildInfo-      system "IHaskell setup"-      system "cp ./images/ihaskell-logo.png `ipython locate profile haskell`/static/base/images/ipynblogo.png"-      return ()-}--buildParser = system "./build-parser.sh"+main = defaultMain
− build-parser.sh
@@ -1,13 +0,0 @@-#!/bin/sh-# Called from Setup.hs.--# Preprocess the GHC parser we're using to CPP subs.-cpphs --linepragma --text HaskellParser.y.pp -OParser.y--# Compile the parser and remove intermediate file.-happy Parser.y-rm Parser.y--# Move output Haskell to source directory.-mkdir -p IHaskell/GHC-mv Parser.hs IHaskell/GHC/HaskellParser.hs
− config/custom.js
@@ -1,83 +0,0 @@-// leave at least 2 line with only a star on it below, or doc generation fails-/**- *- *- * Placeholder for custom user javascript- * mainly to be overridden in profile/static/js/custom.js- * This will always be an empty file in IPython- *- * User could add any javascript in the `profile/static/js/custom.js` file- * (and should create it if it does not exist).- * It will be executed by the ipython notebook at load time.- *- * Same thing with `profile/static/css/custom.css` to inject custom css into the notebook.- *- * Example :- *- * Create a custom button in toolbar that execute `%qtconsole` in kernel- * and hence open a qtconsole attached to the same kernel as the current notebook- *- *    $([IPython.events]).on('notebook_loaded.Notebook', function(){- *        IPython.toolbar.add_buttons_group([- *            {- *                 'label'   : 'run qtconsole',- *                 'icon'    : 'ui-icon-calculator', // select your icon from http://jqueryui.com/themeroller/- *                 'callback': function(){IPython.notebook.kernel.execute('%qtconsole')}- *            }- *            // add more button here if needed.- *            ]);- *    });- *- * Example :- *- *  Use `jQuery.getScript(url [, success(script, textStatus, jqXHR)] );`- *  to load custom script into the notebook.- *- *    // to load the metadata ui extension example.- *    $.getScript('/static/js/celltoolbarpresets/example.js');- *    // or- *    // to load the metadata ui extension to control slideshow mode / reveal js for nbconvert- *    $.getScript('/static/js/celltoolbarpresets/slideshow.js');- *- *- * @module IPython- * @namespace IPython- * @class customjs- * @static- */--// end of IPython unmodified version ---$([IPython.events]).on('notebook_loaded.Notebook', function(){-    // add here logic that should be run once per **notebook load**-    // (!= page load), like restarting a checkpoint--    var md = IPython.notebook.metadata -    if(md.language){-        console.log('language already defined and is :', md.language);-    } else {-        md.language = 'haskell' ;-        console.log('add metadata hint that language is haskell...');-    }-});---$([IPython.events]).on('app_initialized.NotebookApp', function(){-    // add here logic that shoudl be run once per **page load**-    // like adding specific UI, or changing the default value-    // of codecell highlight.--    CodeMirror.requireMode('haskell', function(){-        cells = IPython.notebook.get_cells();-        for(var i in cells){-            c = cells[i];-            if (c.cell_type === 'code'){-                c.auto_highlight()-            }-        }-    })--    IPython.CodeCell.options_default['cm_config']['mode'] = 'haskell';-});-
− config/ipython_config.py
@@ -1,7 +0,0 @@-# Available Subsitutions:-# ${executable}:    Path to IHaskell kernel.-c = get_config()-exe = '${executable}'.replace(' ', '\\\\ ')-c.KernelManager.kernel_cmd = [exe, 'kernel', '{connection_file}']-c.Session.key = ''-c.Session.keyfile = ''
− config/ipython_console_config.py
@@ -1,1 +0,0 @@-# Empty.
− config/ipython_notebook_config.py
@@ -1,2 +0,0 @@-c = get_config()-c.NotebookApp.port = 8778
− config/ipython_qtconsole_config.py
@@ -1,6 +0,0 @@-c = get_config()--# QtConsole try to guess base on Python lexing when the input is done to auto-# execute.  This Fails on Haskell, and while it is not possible to do the-# lexing in the kernel just deactivate functionality-c.IPythonWidget.execute_on_complete_input = False
− deps/codecell.js
@@ -1,460 +0,0 @@-//-----------------------------------------------------------------------------//  Copyright (C) 2008-2011  The IPython Development Team-//-//  Distributed under the terms of the BSD License.  The full license is in-//  the file COPYING, distributed as part of this software.-//------------------------------------------------------------------------------//============================================================================-// CodeCell-//============================================================================-/**- * An extendable module that provide base functionnality to create cell for notebook.- * @module IPython- * @namespace IPython- * @submodule CodeCell- */---/* local util for codemirror */-var posEq = function(a, b) {return a.line == b.line && a.ch == b.ch;};--/**- *- * function to delete until previous non blanking space character- * or first multiple of 4 tabstop.- * @private- */-CodeMirror.commands.delSpaceToPrevTabStop = function(cm){-    var from = cm.getCursor(true), to = cm.getCursor(false), sel = !posEq(from, to);-    if (!posEq(from, to)) { cm.replaceRange("", from, to); return; }-    var cur = cm.getCursor(), line = cm.getLine(cur.line);-    var tabsize = cm.getOption('tabSize');-    var chToPrevTabStop = cur.ch-(Math.ceil(cur.ch/tabsize)-1)*tabsize;-    from = {ch:cur.ch-chToPrevTabStop,line:cur.line};-    var select = cm.getRange(from,cur);-    if( select.match(/^\ +$/) !== null){-        cm.replaceRange("",from,cur);-    } else {-        cm.deleteH(-1,"char");-    }-};---var IPython = (function (IPython) {-    "use strict";--    var utils = IPython.utils;-    var key   = IPython.utils.keycodes;--    /**-     * A Cell conceived to write code.-     *-     * The kernel doesn't have to be set at creation time, in that case-     * it will be null and set_kernel has to be called later.-     * @class CodeCell-     * @extends IPython.Cell-     *-     * @constructor-     * @param {Object|null} kernel-     * @param {object|undefined} [options]-     *      @param [options.cm_config] {object} config to pass to CodeMirror-     */-    var CodeCell = function (kernel, options) {-        this.kernel = kernel || null;-        this.code_mirror = null;-        this.input_prompt_number = null;-        this.collapsed = false;-        this.cell_type = "code";---        var cm_overwrite_options  = {-            onKeyEvent: $.proxy(this.handle_codemirror_keyevent,this)-        };--        options = this.mergeopt(CodeCell, options, {cm_config:cm_overwrite_options});--        IPython.Cell.apply(this,[options]);--        var that = this;-        this.element.focusout(-            function() { that.auto_highlight(); }-        );-    };--    CodeCell.options_default = {-        cm_config : {-            extraKeys: {-                "Tab" :  "indentMore",-                "Shift-Tab" : "indentLess",-                "Backspace" : "delSpaceToPrevTabStop",-                "Cmd-/" : "toggleComment",-                "Ctrl-/" : "toggleComment"-            },-            mode: 'ipython',-            theme: 'ipython',-            matchBrackets: true-        }-    };---    CodeCell.prototype = new IPython.Cell();--    /**-     * @method auto_highlight-     */-    CodeCell.prototype.auto_highlight = function () {-        this._auto_highlight(IPython.config.cell_magic_highlight);-    };--    /** @method create_element */-    CodeCell.prototype.create_element = function () {-        IPython.Cell.prototype.create_element.apply(this, arguments);--        var cell =  $('<div></div>').addClass('cell border-box-sizing code_cell');-        cell.attr('tabindex','2');--        this.celltoolbar = new IPython.CellToolbar(this);--        var input = $('<div></div>').addClass('input');-        var vbox = $('<div/>').addClass('vbox box-flex1');-        input.append($('<div/>').addClass('prompt input_prompt'));-        vbox.append(this.celltoolbar.element);-        var input_area = $('<div/>').addClass('input_area');-        this.code_mirror = CodeMirror(input_area.get(0), this.cm_config);-        $(this.code_mirror.getInputField()).attr("spellcheck", "false");-        vbox.append(input_area);-        input.append(vbox);-        var output = $('<div></div>');-        cell.append(input).append(output);-        this.element = cell;-        this.output_area = new IPython.OutputArea(output, true);--        // construct a completer only if class exist-        // otherwise no print view-        if (IPython.Completer !== undefined)-        {-            this.completer = new IPython.Completer(this);-        }-    };--    /**-     *  This method gets called in CodeMirror's onKeyDown/onKeyPress-     *  handlers and is used to provide custom key handling. Its return-     *  value is used to determine if CodeMirror should ignore the event:-     *  true = ignore, false = don't ignore.-     *  @method handle_codemirror_keyevent-     */-    CodeCell.prototype.handle_codemirror_keyevent = function (editor, event) {--        var that = this;-        // whatever key is pressed, first, cancel the tooltip request before-        // they are sent, and remove tooltip if any, except for tab again-        if (event.type === 'keydown' && event.which != key.TAB ) {-            IPython.tooltip.remove_and_cancel_tooltip();-        }--        var cur = editor.getCursor();-        if (event.keyCode === key.ENTER){-            this.auto_highlight();-        }--        if (event.keyCode === key.ENTER && (event.shiftKey || event.ctrlKey)) {-            // Always ignore shift-enter in CodeMirror as we handle it.-            return true;-        } else if (event.which === 32 && event.type === 'keypress' && IPython.tooltip.time_before_tooltip >= 0) {-            // Trigger on keypress (!) otherwise inconsistent event.which-            // depending on platform, browser, and keyboard layout!  Pressing-            // space will request tooltip (not open parenthesis), don't forget-            // to reappend it.  The second argument says to hide the tooltip if-            // the docstring is actually empty.-            IPython.tooltip.pending(that, true);-        } else if (event.which === key.UPARROW && event.type === 'keydown') {-            // If we are not at the top, let CM handle the up arrow and-            // prevent the global keydown handler from handling it.-            if (!that.at_top()) {-                event.stop();-                return false;-            } else {-                return true;-            }-        } else if (event.which === key.ESC) {-            return IPython.tooltip.remove_and_cancel_tooltip(true);-        } else if (event.which === key.DOWNARROW && event.type === 'keydown') {-            // If we are not at the bottom, let CM handle the down arrow and-            // prevent the global keydown handler from handling it.-            if (!that.at_bottom()) {-                event.stop();-                return false;-            } else {-                return true;-            }-        } else if (event.keyCode === key.TAB && event.type == 'keydown' && event.shiftKey) {-                if (editor.somethingSelected()){-                    var anchor = editor.getCursor("anchor");-                    var head = editor.getCursor("head");-                    if( anchor.line != head.line){-                        return false;-                    }-                }-                IPython.tooltip.request(that);-                event.stop();-                return true;-        } else if (event.keyCode === key.TAB && event.type == 'keydown') {-            // Tab completion.-            //Do not trim here because of tooltip-            if (editor.somethingSelected()) { return false; }-            var pre_cursor = editor.getRange({line:cur.line,ch:0},cur);-            if (pre_cursor.trim() === "") {-                // Don't autocomplete if the part of the line before the cursor-                // is empty.  In this case, let CodeMirror handle indentation.-                return false;-            } else {-                event.stop();-                this.completer.startCompletion();-                return true;-            }-        } else {-            // keypress/keyup also trigger on TAB press, and we don't want to-            // use those to disable tab completion.-            return false;-        }-        return false;-    };---    // Kernel related calls.--    CodeCell.prototype.set_kernel = function (kernel) {-        this.kernel = kernel;-    };--    /**-     * Execute current code cell to the kernel-     * @method execute-     */-    CodeCell.prototype.execute = function () {-        this.output_area.clear_output();-        this.set_input_prompt('*');-        this.element.addClass("running");-        if (this.last_msg_id) {-            this.kernel.clear_callbacks_for_msg(this.last_msg_id);-        }-        var callbacks = this.get_callbacks();-        -        this.last_msg_id = this.kernel.execute(this.get_text(), callbacks, {silent: false, store_history: true});-    };-    -    /**-     * Construct the default callbacks for-     * @method get_callbacks-     */-    CodeCell.prototype.get_callbacks = function () {-        return {-            shell : {-                reply : $.proxy(this._handle_execute_reply, this),-                payload : {-                    set_next_input : $.proxy(this._handle_set_next_input, this),-                    page : $.proxy(this._open_with_pager, this)-                }-            },-            iopub : {-                output : $.proxy(this.output_area.handle_output, this.output_area),-                clear_output : $.proxy(this.output_area.handle_clear_output, this.output_area),-            },-            input : $.proxy(this._handle_input_request, this)-        };-    };-    -    CodeCell.prototype._open_with_pager = function (payload) {-        $([IPython.events]).trigger('open_with_text.Pager', payload);-    };--    /**-     * @method _handle_execute_reply-     * @private-     */-    CodeCell.prototype._handle_execute_reply = function (msg) {-        this.set_input_prompt(msg.content.execution_count);-        this.element.removeClass("running");-        $([IPython.events]).trigger('set_dirty.Notebook', {value: true});-    };--    /**-     * @method _handle_set_next_input-     * @private-     */-    CodeCell.prototype._handle_set_next_input = function (payload) {-        var data = {'cell': this, 'text': payload.text};-        $([IPython.events]).trigger('set_next_input.Notebook', data);-    };--    /**-     * @method _handle_input_request-     * @private-     */-    CodeCell.prototype._handle_input_request = function (msg) {-        this.output_area.append_raw_input(msg);-    };---    // Basic cell manipulation.--    CodeCell.prototype.select = function () {-        IPython.Cell.prototype.select.apply(this);-        this.code_mirror.refresh();-        this.code_mirror.focus();-        this.auto_highlight();-        // We used to need an additional refresh() after the focus, but-        // it appears that this has been fixed in CM. This bug would show-        // up on FF when a newly loaded markdown cell was edited.-    };---    CodeCell.prototype.select_all = function () {-        var start = {line: 0, ch: 0};-        var nlines = this.code_mirror.lineCount();-        var last_line = this.code_mirror.getLine(nlines-1);-        var end = {line: nlines-1, ch: last_line.length};-        this.code_mirror.setSelection(start, end);-    };---    CodeCell.prototype.collapse = function () {-        this.collapsed = true;-        this.output_area.collapse();-    };---    CodeCell.prototype.expand = function () {-        this.collapsed = false;-        this.output_area.expand();-    };---    CodeCell.prototype.toggle_output = function () {-        this.collapsed = Boolean(1 - this.collapsed);-        this.output_area.toggle_output();-    };---    CodeCell.prototype.toggle_output_scroll = function () {-    this.output_area.toggle_scroll();-    };---    CodeCell.input_prompt_classical = function (prompt_value, lines_number) {-        var ns = prompt_value || "&nbsp;";-        return 'In&nbsp;[' + ns + ']:';-    };--    CodeCell.input_prompt_continuation = function (prompt_value, lines_number) {-        var html = [CodeCell.input_prompt_classical(prompt_value, lines_number)];-        for(var i=1; i < lines_number; i++) {-            html.push(['...:']);-        }-        return html.join('<br/>');-    };--    CodeCell.input_prompt_function = CodeCell.input_prompt_classical;---    CodeCell.prototype.set_input_prompt = function (number) {-        var nline = 1;-        if (this.code_mirror !== undefined) {-           nline = this.code_mirror.lineCount();-        }-        this.input_prompt_number = number;-        var prompt_html = CodeCell.input_prompt_function(this.input_prompt_number, nline);-        this.element.find('div.input_prompt').html(prompt_html);-    };---    CodeCell.prototype.clear_input = function () {-        this.code_mirror.setValue('');-    };---    CodeCell.prototype.get_text = function () {-        return this.code_mirror.getValue();-    };---    CodeCell.prototype.set_text = function (code) {-        return this.code_mirror.setValue(code);-    };---    CodeCell.prototype.at_top = function () {-        var cursor = this.code_mirror.getCursor();-        if (cursor.line === 0 && cursor.ch === 0) {-            return true;-        } else {-            return false;-        }-    };---    CodeCell.prototype.at_bottom = function () {-        var cursor = this.code_mirror.getCursor();-        if (cursor.line === (this.code_mirror.lineCount()-1) && cursor.ch === this.code_mirror.getLine(cursor.line).length) {-            return true;-        } else {-            return false;-        }-    };---    CodeCell.prototype.clear_output = function (wait) {-        this.output_area.clear_output(wait);-    };---    // JSON serialization--    CodeCell.prototype.fromJSON = function (data) {-        IPython.Cell.prototype.fromJSON.apply(this, arguments);-        if (data.cell_type === 'code') {-            if (data.input !== undefined) {-                this.set_text(data.input);-                // make this value the starting point, so that we can only undo-                // to this state, instead of a blank cell-                this.code_mirror.clearHistory();-                this.auto_highlight();-            }-            if (data.prompt_number !== undefined) {-                this.set_input_prompt(data.prompt_number);-            } else {-                this.set_input_prompt();-            }-            this.output_area.fromJSON(data.outputs);-            if (data.collapsed !== undefined) {-                if (data.collapsed) {-                    this.collapse();-                } else {-                    this.expand();-                }-            }-        }-    };---    CodeCell.prototype.toJSON = function () {-        var data = IPython.Cell.prototype.toJSON.apply(this);-        data.input = this.get_text();-        data.cell_type = 'code';-        if (this.input_prompt_number) {-            data.prompt_number = this.input_prompt_number;-        }-        var outputs = this.output_area.toJSON();-        data.outputs = outputs;-        data.language = 'python';-        data.collapsed = this.collapsed;-        return data;-    };---    IPython.CodeCell = CodeCell;--    return IPython;-}(IPython));
− deps/tooltip.js
@@ -1,382 +0,0 @@-// The following code was taken directively from the ipython repo at: -// ipython/ipython/master/IPython/html/static/notebook/js/tooltip.js -// commit: #4195-// ------------------------------------------------------------------------------// -----------------------------------------------------------------------------//  Copyright (C) 2008-2011  The IPython Development Team--//  Distributed under the terms of the BSD License.  The full license is in-//  the file COPYING, distributed as part of this software.-// -----------------------------------------------------------------------------// ============================================================================-// Tooltip-// ============================================================================--// you can set the autocall time by setting `IPython.tooltip.time_before_tooltip` in ms--// you can configure the differents action of pressing tab several times in a row by-// setting/appending different fonction in the array-// IPython.tooltip.tabs_functions--// eg :-// IPython.tooltip.tabs_functions[4] = function (){console.log('this is the action of the 4th tab pressing')}--var IPython = (function (IPython) {-    "use strict";--    var utils = IPython.utils;--    // tooltip constructor-    var Tooltip = function () {-            var that = this;-            this.time_before_tooltip = 800;--            // handle to html-            this.tooltip = \$('#tooltip');-            this._hidden = true;--            // variable for consecutive call-            this._old_cell = null;-            this._old_request = null;-            this._consecutive_counter = 0;--            // 'sticky ?'-            this._sticky = false;--            // display tooltip if the docstring is empty?-            this._hide_if_no_docstring = false;--            // contain the button in the upper right corner-            this.buttons = \$('<div/>').addClass('tooltipbuttons');--            // will contain the docstring-            this.text = \$('<div/>').addClass('tooltiptext').addClass('smalltooltip');--            // build the buttons menu on the upper right-            // expand the tooltip to see more-            var expandlink = \$('<a/>').attr('href', "#").addClass("ui-corner-all") //rounded corner-            .attr('role', "button").attr('id', 'expanbutton').attr('title', 'Grow the tooltip vertically (press tab 2 times)').click(function () {-                that.expand()-            }).append(-            \$('<span/>').text('Expand').addClass('ui-icon').addClass('ui-icon-plus'));--            // open in pager-            var morelink = \$('<a/>').attr('href', "#").attr('role', "button").addClass('ui-button').attr('title', 'show the current docstring in pager (press tab 4 times)');-            var morespan = \$('<span/>').text('Open in Pager').addClass('ui-icon').addClass('ui-icon-arrowstop-l-n');-            morelink.append(morespan);-            morelink.click(function () {-                that.showInPager(that._old_cell);-            });--            // close the tooltip-            var closelink = \$('<a/>').attr('href', "#").attr('role', "button").addClass('ui-button');-            var closespan = \$('<span/>').text('Close').addClass('ui-icon').addClass('ui-icon-close');-            closelink.append(closespan);-            closelink.click(function () {-                that.remove_and_cancel_tooltip(true);-            });--            this._clocklink = \$('<a/>').attr('href', "#");-            this._clocklink.attr('role', "button");-            this._clocklink.addClass('ui-button');-            this._clocklink.attr('title', 'Tootip is not dismissed while typing for 10 seconds');-            var clockspan = \$('<span/>').text('Close');-            clockspan.addClass('ui-icon');-            clockspan.addClass('ui-icon-clock');-            this._clocklink.append(clockspan);-            this._clocklink.click(function () {-                that.cancel_stick();-            });-----            //construct the tooltip-            // add in the reverse order you want them to appear-            this.buttons.append(closelink);-            this.buttons.append(expandlink);-            this.buttons.append(morelink);-            this.buttons.append(this._clocklink);-            this._clocklink.hide();---            // we need a phony element to make the small arrow-            // of the tooltip in css-            // we will move the arrow later-            this.arrow = \$('<div/>').addClass('pretooltiparrow');-            this.tooltip.append(this.buttons);-            this.tooltip.append(this.arrow);-            this.tooltip.append(this.text);--            // function that will be called if you press tab 1, 2, 3... times in a row-            this.tabs_functions = [function (cell, text) {-                that._request_tooltip(cell, text);-            }, function () {-                that.expand();-            }, function () {-                that.stick();-            }, function (cell) {-                that.cancel_stick();-                that.showInPager(cell);-            }];-            // call after all the tabs function above have bee call to clean their effects-            // if necessary-            this.reset_tabs_function = function (cell, text) {-                this._old_cell = (cell) ? cell : null;-                this._old_request = (text) ? text : null;-                this._consecutive_counter = 0;-            }-        };--    Tooltip.prototype.showInPager = function (cell) {-        // reexecute last call in pager by appending ? to show back in pager-        var that = this;-        var empty = function () {};-        cell.kernel.execute(-        that.name + '?', {-            'execute_reply': empty,-            'output': empty,-            'clear_output': empty,-            'cell': cell-        }, {-            'silent': false,-            'store_history': true-        });-        this.remove_and_cancel_tooltip();-    }--    // grow the tooltip verticaly-    Tooltip.prototype.expand = function () {-        this.text.removeClass('smalltooltip');-        this.text.addClass('bigtooltip');-        \$('#expanbutton').hide('slow');-    }--    // deal with all the logic of hiding the tooltip-    // and reset it's status-    Tooltip.prototype._hide = function () {-        this.tooltip.fadeOut('fast');-        \$('#expanbutton').show('slow');-        this.text.removeClass('bigtooltip');-        this.text.addClass('smalltooltip');-        // keep scroll top to be sure to always see the first line-        this.text.scrollTop(0);-        this._hidden = true;-        this.code_mirror = null;-    }--    Tooltip.prototype.remove_and_cancel_tooltip = function (force) {-        // note that we don't handle closing directly inside the calltip-        // as in the completer, because it is not focusable, so won't-        // get the event.-        if (this._sticky == false || force == true) {-            this.cancel_stick();-            this._hide();-        }-        this.cancel_pending();-        this.reset_tabs_function();-    }--    // cancel autocall done after '(' for example.-    Tooltip.prototype.cancel_pending = function () {-        if (this._tooltip_timeout != null) {-            clearTimeout(this._tooltip_timeout);-            this._tooltip_timeout = null;-        }-    }--    // will trigger tooltip after timeout-    Tooltip.prototype.pending = function (cell, hide_if_no_docstring) {-        var that = this;-        this._tooltip_timeout = setTimeout(function () {-            that.request(cell, hide_if_no_docstring)-        }, that.time_before_tooltip);-    }--    Tooltip.prototype._request_tooltip = function (cell, func) {-        // use internally just to make the request to the kernel-        // Feel free to shorten this logic if you are better-        // than me in regEx-        // basicaly you shoul be able to get xxx.xxx.xxx from-        // something(range(10), kwarg=smth) ; xxx.xxx.xxx( firstarg, rand(234,23), kwarg1=2,-        // remove everything between matchin bracket (need to iterate)-        var matchBracket = /\\([^\\(\\)]+\\)/g;-        var endBracket = /\\([^\\(]*\$/g;-        var oldfunc = func;--        func = func.replace(matchBracket, "");-        while (oldfunc != func) {-            oldfunc = func;-            func = func.replace(matchBracket, "");-        }-        // remove everything after last open bracket-        func = func.replace(endBracket, "");--        var re = /[a-z_][0-9a-z._!]+\$/gi; // casse insensitive-        var that = this-        var callbacks_v2 = function(data){-            \$.proxy(that._show(data.content), that)-        }-        var callbacks = {-            'object_info_reply': \$.proxy(this._show, this)-        }-        if(cell.kernel.object_info_request){-            // we are on IPython 1.x and early 2.0 (before bidirectionnal js comm)-            var msg_id = cell.kernel.object_info_request(re.exec(func), callbacks);-        } else {-            // we are after that, 2.0-dev late october and after-            var msg_id = cell.kernel.object_info(re.exec(func), callbacks_v2);-        }-    }--    // make an imediate completion request-    Tooltip.prototype.request = function (cell, hide_if_no_docstring) {-        // request(codecell)-        // Deal with extracting the text from the cell and counting-        // call in a row-        this.cancel_pending();-        var editor = cell.code_mirror;-        var cursor = editor.getCursor();-        var text = editor.getRange({-            line: cursor.line,-            ch: 0-        }, cursor).trim();--        this._hide_if_no_docstring = hide_if_no_docstring;--        if(editor.somethingSelected()){-            text = editor.getSelection();-        }--        // need a permanent handel to code_mirror for future auto recall-        this.code_mirror = editor;--        // now we treat the different number of keypress-        // first if same cell, same text, increment counter by 1-        if (this._old_cell == cell && this._old_request == text && this._hidden == false) {-            this._consecutive_counter++;-        } else {-            // else reset-            this.cancel_stick();-            this.reset_tabs_function (cell, text);-        }--        // don't do anything if line beggin with '(' or is empty-        if (text === "" || text === "(") {-            return;-        }--        this.tabs_functions[this._consecutive_counter](cell, text);--        // then if we are at the end of list function, reset-        if (this._consecutive_counter == this.tabs_functions.length) this.reset_tabs_function (cell, text);--        return;-    }--    // cancel the option of having the tooltip to stick-    Tooltip.prototype.cancel_stick = function () {-        clearTimeout(this._stick_timeout);-        this._stick_timeout = null;-        this._clocklink.hide('slow');-        this._sticky = false;-    }--    // put the tooltip in a sicky state for 10 seconds-    // it won't be removed by remove_and_cancell() unless you called with-    // the first parameter set to true.-    // remove_and_cancell_tooltip(true)-    Tooltip.prototype.stick = function (time) {-        time = (time != undefined) ? time : 10;-        var that = this;-        this._sticky = true;-        this._clocklink.show('slow');-        this._stick_timeout = setTimeout(function () {-            that._sticky = false;-            that._clocklink.hide('slow');-        }, time * 1000);-    }--    // should be called with the kernel reply to actually show the tooltip-    Tooltip.prototype._show = function (reply) {-        // move the bubble if it is not hidden-        // otherwise fade it-        this.name = reply.name;--        // do some math to have the tooltip arrow on more or less on left or right-        // width of the editor-        var w = \$(this.code_mirror.getScrollerElement()).width();-        // ofset of the editor-        var o = \$(this.code_mirror.getScrollerElement()).offset();--        // whatever anchor/head order but arrow at mid x selection-        var anchor = this.code_mirror.cursorCoords(false);-        var head  = this.code_mirror.cursorCoords(true);-        var xinit = (head.left+anchor.left)/2;-        var xinter = o.left + (xinit - o.left) / w * (w - 450);-        var posarrowleft = xinit - xinter;--        if (this._hidden == false) {-            this.tooltip.animate({-                'left': xinter - 30 + 'px',-                'top': (head.bottom + 10) + 'px'-            });-        } else {-            this.tooltip.css({-                'left': xinter - 30 + 'px'-            });-            this.tooltip.css({-                'top': (head.bottom + 10) + 'px'-            });-        }-        this.arrow.animate({-            'left': posarrowleft + 'px'-        });--        // build docstring-        var defstring = reply.call_def;-        if (defstring == null) {-            defstring = reply.init_definition;-        }-        if (defstring == null) {-            defstring = reply.definition;-        }--        var docstring = reply.call_docstring;-        if (docstring == null) {-            docstring = reply.init_docstring;-        }-        if (docstring == null) {-            docstring = reply.docstring;-        }-        -        if (docstring == null) {-            // For reals this time, no docstring-            if (this._hide_if_no_docstring) {-                return;-            } else {-                docstring = "<empty docstring>";-            }-        }--        this.tooltip.fadeIn('fast');-        this._hidden = false;-        this.text.children().remove();--        var pre = \$('<pre/>').html(utils.fixConsole(docstring));-        if (defstring) {-            var defstring_html = \$('<pre/>').html(utils.fixConsole(defstring));-            this.text.append(defstring_html);-        }-        this.text.append(pre);-        // keep scroll top to be sure to always see the first line-        this.text.scrollTop(0);-    }---    IPython.Tooltip = Tooltip;--    return IPython;--}(IPython));
ihaskell.cabal view
@@ -7,7 +7,7 @@ -- PVP summary:      +-+------- breaking API changes --                   | | +----- non-breaking API additions --                   | | | +--- code changes with no API change-version:             0.2.0.1+version:             0.2.0.2  -- A short (one-line) description of the package. synopsis:            A Haskell backend kernel for the IPython project.@@ -37,38 +37,32 @@  category:            Development -build-type:          Custom+build-type:          Simple  -- Constraint on the version of Cabal needed to build this package. cabal-version:       >=1.8 -extra-source-files: -  config/custom.js-  config/ipython_config.py-  config/ipython_console_config.py-  config/ipython_notebook_config.py-  config/ipython_qtconsole_config.py-  deps/codecell.js-  deps/tooltip.js-  build-parser.sh-  images/ihaskell-logo.png-  HaskellParser.y.pp+data-files: +  profile/profile.tar  library   build-depends:       base ==4.6.*,+                       tar,+                       ghc-parser,+                       unix >= 2.6,                        hspec,                        zeromq3-haskell ==0.5.*,                        aeson ==0.6.*,                        MissingH ==1.2.*,                        basic-prelude ==0.3.*,-                       classy-prelude ==0.6.*,+                       classy-prelude >=0.6,                        bytestring ==0.10.*,                        uuid >=1.2.6,                        containers ==0.5.*,                        ghc ==7.6.*,                        ghc-paths ==0.1.*,                        random ==1.0.*,-                       split,+                       split >= 0.2,                        utf8-string,                        strict ==0.3.*,                        shelly ==1.3.*,@@ -81,6 +75,7 @@                        mtl == 2.1.*,                        template-haskell   exposed-modules: IHaskell.Display,+                   Paths_ihaskell,                    IHaskell.Types,                    IHaskell.Message.UUID @@ -104,15 +99,14 @@              IHaskell.ZeroMQ              IHaskell.Display              IHaskell.Config-             IHaskell.GHC.HaskellParser ---   extensions: DoAndIfThenElse      -- Other library packages from which modules are imported.   build-depends:       base ==4.6.*,+                       tar,+                       ghc-parser,+                       unix >= 2.6,                        hspec,                        zeromq3-haskell ==0.5.*,                        aeson ==0.6.*,@@ -125,7 +119,7 @@                        ghc ==7.6.*,                        ghc-paths ==0.1.*,                        random ==1.0.*,-                       split,+                       split >= 0.2,                        utf8-string,                        strict ==0.3.*,                        shelly ==1.3.*,@@ -143,6 +137,9 @@   Ghc-Options: -threaded   Main-Is: Hspec.hs   build-depends:       base ==4.6.*,+                       tar,+                       ghc-parser,+                       unix >= 2.6,                        hspec,                        zeromq3-haskell ==0.5.*,                        aeson ==0.6.*,@@ -155,7 +152,7 @@                        ghc ==7.6.*,                        ghc-paths ==0.1.*,                        random ==1.0.*,-                       split,+                       split >= 0.2,                        utf8-string,                        strict ==0.3.*,                        shelly ==1.3.*,
− images/ihaskell-logo.png

binary file changed (39940 → absent bytes)

+ profile/profile.tar view

binary file changed (absent → 83968 bytes)