language-c-quote 0.10.2.3 → 0.13.0.2
raw patch · 27 files changed
Files
- CHANGELOG.md +132/−0
- LICENSE +1/−1
- Language/C.hs +2/−2
- Language/C/Parser.hs +3/−3
- Language/C/Parser/Lexer.x +26/−19
- Language/C/Parser/Monad.hs +42/−25
- Language/C/Parser/Parser.y +652/−260
- Language/C/Parser/Tokens.hs +26/−10
- Language/C/Pretty.hs +386/−253
- Language/C/Quote.hs +18/−7
- Language/C/Quote/Base.hs +252/−100
- Language/C/Quote/C.hs +22/−20
- Language/C/Quote/CUDA.hs +40/−20
- Language/C/Quote/GCC.hs +25/−21
- Language/C/Quote/ObjC.hs +24/−22
- Language/C/Quote/OpenCL.hs +22/−19
- Language/C/Smart.hs +7/−8
- Language/C/Syntax-instances.hs +625/−0
- Language/C/Syntax.hs +49/−345
- dist/build/Language/C/Parser/Lexer.hs +0/−836
- dist/build/Language/C/Parser/Parser.hs +0/−10660
- language-c-quote.cabal +76/−29
- tests/unit/CUDA.hs +62/−0
- tests/unit/GCC.hs +61/−0
- tests/unit/Main.hs +279/−19
- tests/unit/MainCPP.hs +27/−0
- tests/unit/Objc.hs +30/−1
+ CHANGELOG.md view
@@ -0,0 +1,132 @@+## [0.13] - 2021-04-29+### Added+ - Add quotation support for attributes (Richard Marko)+ - Add ranges to case labels as a GCC extension (Mark Barbone)+### Fixed+ - #81 Missing braces cause dangling-else+### Changed+ - Remove dependency on `symbol` package.+ +## [0.12.2.1] - 2019-10-04+### Added+ - Support for GHC 8.8.1.++## [0.12.2] - 2018-04-02+### Added+ - Support for GHC 8.4.1.+### Fixed+- #76 C-style comments in cunit declarations++## [0.12.1] - 2017-07-25+### Fixed+- #75 ObjC needs blocks and GCC extension++## [0.12] - 2017-05-05+### Fixed+- Test with GHC 8.2.1.+- Bump various bounds.+- #71 Bad char literal output+- #69 The antiquoter for double and float does not handle infinity correctly ++## [0.11.7.3] - 2017-03-10+### Fixed+- Bump other `mainland-pretty` upper bound.++## [0.11.7.2] - 2017-03-05+### Fixed+- Bump `mainland-pretty` upper bound.++## [0.11.7.1] - 2016-12-05+### Fixed+- Bump `HUnit` upper bound.++## [0.11.7] - 2016-10-03+### Fixed+- Fix compatibility with `haskell-src-meta` 0.7.0.++## [0.11.6.3] - 2016-08-30+### Fixed+- Fix alignment of pretty-printed comments.++## [0.11.6.2] - 2016-05-18+### Fixed+- #68 Cannot create block consisting of a single statements antiquote++## [0.11.6.1] - 2016-05-10+### Added+- Bump `syb` upper bound for GHC 8.0.1 compatibility.++## [0.11.6] - 2016-04-12+### Added+- Add support for type qualifier escapes.++## [0.11.5.1] - 2016-04-07+### Fixed+- Try to be -Wparentheses clean.+- Fix pretty-pretty of dangling else.+- Add missing test modules to tarball.++## [0.11.5] - 2016-03-30+### Added+- Added ToConst and ToExp instances for Int/Word types (Emil Axelsson)+- Expression and statement raw string escapes (Kosyrev Serge)+- Partial support for C++11 lambda expressions in CUDA code (Michał Wawrzyniec Urbańczyk)++### Fixed+- #64 Negated negative constants do not correctly pretty-print.+- #59 No obvious way to generate macro code -- not even through $esc:(... :: String)+- #51 Objective-C anti-quotations for interface decls broken++## [0.11.4] - 2015-12-22+### Added+- Conditionally use the lightweight haskell-exp-parser instead of haskell-src-meta.++### Fixed+- #57 language-c-quote-0.11.3 does not compile with alex 3.1.5++## [0.11.3] - 2015-10-14+### Added+- `IsString` instances for `Id` and `StringLit` data types.++### Fixed+- #55 Comments at the top of a block before a declaration.++## [0.11.2.1] - 2015-10-06+### Added+- Type qualifiers are now allowed before an antiquoted type.++## [0.11.2] - 2015-09-29+### Added+- `qqPat` and `qqExp` are now exposed.++### Changed+- Bump upper bound on `syb`.+- Providing a starting position is now optional when parsing.++## [0.11.1] - 2015-09-29+### Added+- Automatically-generated `Relocatable` instances added for C abstract syntax types.++### Changed+- `Located` instances are also now automatically generated.++[0.13]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.12.2.1...language-c-quote-0.13+[0.12.2.1]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.12.2...language-c-quote-0.12.2.1+[0.12.2]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.12.1...language-c-quote-0.12.2+[0.12.1]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.12...language-c-quote-0.12.1+[0.12]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.7.2...language-c-quote-0.12+[0.11.7.3]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.7.2...language-c-quote-0.11.7.3+[0.11.7.2]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.7.1...language-c-quote-0.11.7.2+[0.11.7.1]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.7...language-c-quote-0.11.7.1+[0.11.7]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.6.3...language-c-quote-0.11.7+[0.11.6.3]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.6.2...language-c-quote-0.11.6.3+[0.11.6.2]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.6.1...language-c-quote-0.11.6.2+[0.11.6.1]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.6...language-c-quote-0.11.6.1+[0.11.6]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.5.1...language-c-quote-0.11.6+[0.11.5.1]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.5...language-c-quote-0.11.5.1+[0.11.5]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.4...language-c-quote-0.11.5+[0.11.4]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.3...language-c-quote-0.11.4+[0.11.3]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.2...language-c-quote-0.11.3+[0.11.2.1]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.2...language-c-quote-0.11.2.1+[0.11.2]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.1...language-c-quote-0.11.2+[0.11.1]: https://github.com/mainland/language-c-quote/compare/language-c-quote-0.11.0.1...language-c-quote-0.11.1
LICENSE view
@@ -48,7 +48,7 @@ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -Copyright (c) 2013-2014+Copyright (c) 2013-2024 Drexel University. Redistribution and use in source and binary forms, with or without
Language/C.hs view
@@ -1,8 +1,8 @@ -- | -- Module : Language.C--- Copyright : (c) Harvard University 2009+-- Copyright : (c) 2009 Harvard University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu module Language.C ( module Language.C.Parser,
Language/C/Parser.hs view
@@ -1,8 +1,8 @@ -- | -- Module : Language.C.Parser--- Copyright : (c) Harvard University 2006-2010+-- Copyright : (c) 2006-2010 Harvard University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu module Language.C.Parser ( module Language.C.Parser.Lexer,@@ -25,7 +25,7 @@ -> [String] -> P a -> B.ByteString- -> Pos+ -> Maybe Pos -> Either SomeException a parse exts typnames p bs pos = evalP p (emptyPState exts typnames bs pos)
Language/C/Parser/Lexer.x view
@@ -6,23 +6,21 @@ -- | -- Module : Language.C.Parser.Lexer--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- (c) Drexel University 2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- (c) 2013-2015 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu module Language.C.Parser.Lexer ( lexToken ) where +#if !MIN_VERSION_base(4,8,0) import Control.Applicative+#endif /*!MIN_VERSION_base(4,8,0) */ import Control.Monad (when)-import Control.Monad.Error-import Control.Monad.Exception-import Control.Monad.Identity import Control.Monad.State-import Control.Monad.Trans import qualified Data.ByteString.Char8 as B import Data.Char (isAlphaNum, isDigit,@@ -30,6 +28,7 @@ isHexDigit, isLower, isSpace,+ ord, chr, toLower) import Data.List (foldl',@@ -39,7 +38,6 @@ import qualified Data.Map as Map import Data.Ratio ((%)) import qualified Data.Set as Set-import Data.Symbol import Data.Maybe (fromMaybe) import Text.PrettyPrint.Mainland @@ -106,12 +104,15 @@ "$enum:" / { allowAnti } { lexAnti Tanti_enum } "$enums:" / { allowAnti } { lexAnti Tanti_enums } "$esc:" / { allowAnti } { lexAnti Tanti_esc }+ "$escstm:" / { allowAnti } { lexAnti Tanti_escstm } "$edecl:" / { allowAnti } { lexAnti Tanti_edecl } "$edecls:" / { allowAnti } { lexAnti Tanti_edecls } "$item:" / { allowAnti } { lexAnti Tanti_item } "$items:" / { allowAnti } { lexAnti Tanti_items } "$stm:" / { allowAnti } { lexAnti Tanti_stm } "$stms:" / { allowAnti } { lexAnti Tanti_stms }+ "$tyqual:" / { allowAnti } { lexAnti Tanti_type_qual }+ "$tyquals:" / { allowAnti } { lexAnti Tanti_type_quals } "$ty:" / { allowAnti } { lexAnti Tanti_type } "$spec:" / { allowAnti } { lexAnti Tanti_spec } "$param:" / { allowAnti } { lexAnti Tanti_param }@@ -120,6 +121,8 @@ "$comment:" / { allowAnti } { lexAnti Tanti_comment } "$init:" / { allowAnti } { lexAnti Tanti_init } "$inits:" / { allowAnti } { lexAnti Tanti_inits }+ "$attr:" / { allowAnti } { lexAnti Tanti_attr }+ "$attrs:" / { allowAnti } { lexAnti Tanti_attrs } "$" / { allowAnti } { lexAnti Tanti_exp } --@@ -231,6 +234,8 @@ -- -- CUDA --+ "mutable" { token TCUDAmutable }+ "<<<" / { ifExtension cudaExts } { token TCUDA3lt } @@ -247,7 +252,7 @@ locateTok :: AlexInput -> AlexInput -> Token -> L Token locateTok beg end tok =- L (Loc (alexPos beg) (alexPos end)) tok+ L (alexLoc beg end) tok token :: Token -> Action token tok beg end =@@ -263,8 +268,10 @@ line = read l - 1 filename = (takeWhile (/= '\"') . drop 1 . concat . intersperse " ") ws - pos' :: Pos- pos' = Pos filename line 1 (posCoff (alexPos beg))+ pos' :: Maybe Pos+ pos' = case alexPos beg of+ Nothing -> Nothing+ Just pos -> Just $ Pos filename line 1 (posCoff pos) identifier :: Action identifier beg end =@@ -309,7 +316,7 @@ s <- case c of '(' -> lexExpression 0 "" _ | isIdStartChar c -> lexIdChars [c]- | otherwise -> lexerError beg (text "illegal anitquotation")+ | otherwise -> lexerError beg (text "illegal antiquotation") return $ locateTok beg end (antiTok s) where lexIdChars :: String -> P String@@ -324,7 +331,7 @@ maybe_c <- maybePeekChar case maybe_c of Nothing -> do end <- getInput- parserError (Loc (alexPos beg) (alexPos end))+ parserError (alexLoc beg end) (text "unterminated antiquotation") Just '(' -> skipChar >> lexExpression (depth+1) ('(' : s) Just ')' | depth == 0 -> skipChar >> return (unescape (reverse s))@@ -473,7 +480,7 @@ lexFloat beg end = case i of [n] -> return $ locateTok beg end (toToken n)- _ -> fail "bad parse for integer"+ _ -> fail "bad parse for float" where s :: String s = inputString beg end@@ -494,9 +501,9 @@ toToken :: Rational -> Token toToken n = case suffix of- "" -> TdoubleConst (s, n)- "f" -> TfloatConst (s, n)- "l" -> TlongDoubleConst (s, n)+ "" -> TdoubleConst (s, fromRational n)+ "f" -> TfloatConst (s, fromRational n)+ "l" -> TlongDoubleConst (s, fromRational n) type Radix = (Integer, Char -> Bool, Char -> Int) @@ -596,7 +603,7 @@ st <- get case alexScanUser st beg sc of AlexEOF ->- return $ L (Loc (alexPos beg) (alexPos beg)) Teof+ return $ L (alexLoc beg beg) Teof AlexError end -> lexerError end (text rest) where
Language/C/Parser/Monad.hs view
@@ -1,10 +1,11 @@ -- | -- Module : Language.C.Parser.Monad--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu +{-# LANGUAGE CPP #-} {-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE MultiParamTypeClasses #-}@@ -72,6 +73,7 @@ alexGetChar, alexGetByte, alexInputPrevChar,+ alexLoc, nextChar, peekChar, maybePeekChar,@@ -82,19 +84,27 @@ ifExtension ) where +#if !MIN_VERSION_base(4,8,0) import Control.Applicative (Applicative(..))+#endif /* !MIN_VERSION_base(4,8,0) */ import Control.Monad.Exception-import Control.Monad.Identity import Control.Monad.State import Data.Bits import qualified Data.ByteString.Char8 as B import Data.ByteString.Internal (c2w) import Data.List (foldl') import Data.Loc+#if !(MIN_VERSION_base(4,9,0))+import Data.Monoid (Monoid(..), (<>))+#endif /* !(MIN_VERSION_base(4,9,0)) */+#if MIN_VERSION_base(4,9,0) && !(MIN_VERSION_base(4,11,0))+import Data.Semigroup (Semigroup(..))+#endif import qualified Data.Set as Set import Data.Typeable (Typeable) import Data.Word import Text.PrettyPrint.Mainland+import Text.PrettyPrint.Mainland.Class import Language.C.Parser.Tokens import Language.C.Syntax@@ -113,7 +123,7 @@ emptyPState :: [Extensions] -> [String] -> B.ByteString- -> Pos+ -> Maybe Pos -> PState emptyPState exts typnames buf pos = PState { input = inp@@ -137,29 +147,30 @@ newtype P a = P { runP :: PState -> Either SomeException (a, PState) } instance Functor P where- fmap f x = x >>= return . f+ fmap f mx = P $ \s -> case runP mx s of+ Left e -> Left e+ Right (x, s') -> Right (f x, s') instance Applicative P where- pure = return- (<*>) = ap+ pure x = P $ \s -> Right (x, s) -instance Monad P where- m >>= k = P $ \s ->- case runP m s of- Left e -> Left e- Right (a, s') -> runP (k a) s'+ mf <*> mx = P $ \s -> case runP mf s of+ Left e -> Left e+ Right (f, s') -> runP (fmap f mx) s' - m1 >> m2 = P $ \s ->- case runP m1 s of- Left e -> Left e- Right (_, s') -> runP m2 s'+instance Monad P where+ m >>= k = P $ \s -> case runP m s of+ Left e -> Left e+ Right (a, s') -> runP (k a) s' - return a = P $ \s -> Right (a, s)+ return = pure +#if MIN_VERSION_base(4,13,0)+instance MonadFail P where+#endif fail msg = do inp <- getInput- throw $ ParserException (Loc (alexPos inp) (alexPos inp))- (ppr (alexPos inp) <> colon <+> text msg)+ throw $ ParserException (alexLoc inp inp) (text msg) instance MonadState PState P where get = P $ \s -> Right (s, s)@@ -304,14 +315,14 @@ useObjCExts :: P Bool useObjCExts = useExts objcExts -data LexerException = LexerException Pos Doc+data LexerException = LexerException (Maybe Pos) Doc deriving (Typeable) instance Exception LexerException where instance Show LexerException where show (LexerException pos msg) =- show $ nest 4 $ ppr pos <> text ":" </> msg+ pretty 80 $ nest 4 $ ppr pos <> text ":" </> msg data ParserException = ParserException Loc Doc deriving (Typeable)@@ -320,7 +331,7 @@ instance Show ParserException where show (ParserException loc msg) =- show $ nest 4 $ ppr loc <> text ":" </> msg+ pretty 80 $ nest 4 $ ppr loc <> text ":" </> msg quoteTok :: Doc -> Doc quoteTok = enclose (char '`') (char '\'')@@ -381,7 +392,7 @@ pprAfter (Just what) = text " after" <+> text what data AlexInput = AlexInput- { alexPos :: {-#UNPACK#-} !Pos+ { alexPos :: !(Maybe Pos) , alexPrevChar :: {-#UNPACK#-} !Char , alexInput :: {-#UNPACK#-} !B.ByteString , alexOff :: {-#UNPACK#-} !Int@@ -391,7 +402,7 @@ alexGetChar inp = case B.uncons (alexInput inp) of Nothing -> Nothing- Just (c, bs) -> Just (c, inp { alexPos = advancePos (alexPos inp) c+ Just (c, bs) -> Just (c, inp { alexPos = fmap (\pos -> advancePos pos c) (alexPos inp) , alexPrevChar = c , alexInput = bs , alexOff = alexOff inp + 1@@ -405,6 +416,12 @@ alexInputPrevChar :: AlexInput -> Char alexInputPrevChar = alexPrevChar++alexLoc :: AlexInput -> AlexInput -> Loc+alexLoc inp1 inp2 =+ case (alexPos inp1, alexPos inp2) of+ (Just pos1, Just pos2) -> Loc pos1 pos2+ _ -> NoLoc nextChar :: P Char nextChar = do
Language/C/Parser/Parser.y view
@@ -5,12 +5,12 @@ -- | -- Module : Language.C.Parser.Parser--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2012--- (c) Manuel M T Chakravarty 2013-2014--- (c) Drexel University 2013-2014+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2012 Geoffrey Mainland+-- (c) 2013-2014 Manuel M T Chakravarty+-- (c) 2013-2016 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu module Language.C.Parser.Parser where @@ -19,11 +19,17 @@ unless, liftM) import Control.Monad.Exception-import Data.List (intersperse)+import Data.List (intersperse, sort) import Data.Loc import Data.Maybe (fromMaybe, catMaybes)-import Data.Monoid+#if !(MIN_VERSION_base(4,9,0))+import Data.Monoid (Monoid(..), (<>))+#endif /* !(MIN_VERSION_base(4,9,0)) */+#if MIN_VERSION_base(4,9,0) && !(MIN_VERSION_base(4,11,0))+import Data.Semigroup (Semigroup(..))+#endif import Text.PrettyPrint.Mainland+import Text.PrettyPrint.Mainland.Class import Language.C.Parser.Lexer import Language.C.Parser.Monad@@ -159,6 +165,7 @@ ANTI_ENUM { L _ (T.Tanti_enum _) } ANTI_ENUMS { L _ (T.Tanti_enums _) } ANTI_ESC { L _ (T.Tanti_esc _) }+ ANTI_ESCSTM { L _ (T.Tanti_escstm _) } ANTI_EDECL { L _ (T.Tanti_edecl _) } ANTI_EDECLS { L _ (T.Tanti_edecls _) } ANTI_ITEM { L _ (T.Tanti_item _) }@@ -166,6 +173,8 @@ ANTI_STM { L _ (T.Tanti_stm _) } ANTI_STMS { L _ (T.Tanti_stms _) } ANTI_SPEC { L _ (T.Tanti_spec _) }+ ANTI_TYPE_QUAL { L _ (T.Tanti_type_qual _) }+ ANTI_TYPE_QUALS { L _ (T.Tanti_type_quals _) } ANTI_TYPE { L _ (T.Tanti_type _) } ANTI_PARAM { L _ (T.Tanti_param _) } ANTI_PARAMS { L _ (T.Tanti_params _) }@@ -192,7 +201,11 @@ '__builtin_va_arg' { L _ T.Tbuiltin_va_arg } '__builtin_va_list' { L _ T.Tbuiltin_va_list } '__typeof__' { L _ T.Ttypeof }+ '__restrict' { L _ T.T__restrict } + ANTI_ATTR { L _ (T.Tanti_attr _) }+ ANTI_ATTRS { L _ (T.Tanti_attrs _) }+ -- -- Clang blocks --@@ -251,6 +264,7 @@ -- -- CUDA --+ 'mutable' { L _ T.TCUDAmutable } '<<<' { L _ T.TCUDA3lt } '>>>' { L _ T.TCUDA3gt } '__device__' { L _ T.TCUDAdevice }@@ -297,10 +311,11 @@ %name parseStructDecl struct_declaration %name parseEnum enumerator -%name parseType type_declaration-%name parseParam parameter_declaration-%name parseParams parameter_list-%name parseInit initializer+%name parseTypeQuals type_qualifier_list+%name parseType type_declaration+%name parseParam parameter_declaration+%name parseParams parameter_list+%name parseInit initializer %name parseStm statement %name parseStms statement_list@@ -310,6 +325,8 @@ %name parseUnit translation_unit %name parseFunc function_definition +%name parseAttr attrib+ -- -- Objective-C --@@ -336,8 +353,12 @@ - A rule with a '_nla' suffix is a variant of the rule without the suffix such - that it does not contain a leading '__attribute__' specifier. We need these - rules to prevent an ambiguity in old-style function declarations. See the- - rule'declaration_list'.+ - rule 'declaration_list'. -+ - A rule with a '_nlt' suffix is a variant of the rule without the suffix such+ - that it does not contain a leading typedef name. We need these rules to+ - prevent ambiguity in expressions that re-use a typedef name as an identifier.+ - ------------------------------------------------------------------------------} {------------------------------------------------------------------------------@@ -451,23 +472,38 @@ ';' { L (locOf $1) T.Tsemi } | ';' comment { L (locOf $1) T.Tsemi } +string_literal :: { StringLit }+string_literal :+ string_literal_rlist+ { let { slits = rev $1+ ; raw = map (fst . unLoc) slits+ ; s = (concat . map (snd . unLoc)) slits+ }+ in+ StringLit raw s (srclocOf slits)+ }++string_literal_rlist :: { RevList (L (String, String)) }+string_literal_rlist :+ STRING { rsingleton (L (locOf $1) (getSTRING $1)) }+ | string_literal_rlist STRING { rcons (L (locOf $2) (getSTRING $2)) $1 }+ primary_expression :: { Exp } primary_expression :- identifier+ identifier_or_typedef { Var $1 (srclocOf $1) } | constant { Const $1 (srclocOf $1) } | string_literal { Const (mkStringConst $1) (srclocOf $1) }- | '(' expression ')'+ | '(' expression_nlt ')' { $2 }- | '(' expression error+ | '(' expression_nlt error {% unclosed ($1 <--> $2) "(" } | '(' compound_statement ')'- { let Block items _ = $2- in- StmExpr items ($1 `srcspan` $3)- }+ { StmExpr (mkBlockItems $2) ($1 `srcspan` $3) }+ | ANTI_ESC+ { AntiEscExp (getANTI_ESC $1) (srclocOf $1) } | ANTI_EXP { AntiExp (getANTI_EXP $1) (srclocOf $1) } @@ -478,29 +514,10 @@ | objc_message_expression { $1 } | objc_at_expression { $1 } -string_literal :: { StringLit }-string_literal :- string_literal_rlist- { let { slits = rev $1- ; raw = map (fst . unLoc) slits- ; s = (concat . map (snd . unLoc)) slits- }- in- StringLit raw s (srclocOf slits)- }+ -- CUDA -- C++11 lambda-expression subset+ | cuda_lambda_expression { $1 } -string_literal_rlist :: { RevList (L (String, String)) }-string_literal_rlist :- STRING { rsingleton (L (locOf $1) (getSTRING $1)) }- | string_literal_rlist STRING { rcons (L (locOf $2) (getSTRING $2)) $1 } -assignment_expression_rlist :: { RevList Exp }-assignment_expression_rlist :- assignment_expression- { rsingleton $1 }- | assignment_expression_rlist ',' assignment_expression- { rcons $3 $1 }- postfix_expression :: { Exp } postfix_expression : primary_expression@@ -514,21 +531,21 @@ {% unclosed (locOf $2) "(" } | postfix_expression '(' ')' { FnCall $1 [] ($1 `srcspan` $3) }- | postfix_expression '(' argument_expression_rlist error- {% unclosed ($2 <--> rev $3) "(" }- | postfix_expression '(' argument_expression_rlist ')'- { FnCall $1 (rev $3) ($1 `srcspan` $4) }+ | postfix_expression '(' argument_expression_list error+ {% unclosed ($2 <--> $3) "(" }+ | postfix_expression '(' argument_expression_list ')'+ { FnCall $1 $3 ($1 `srcspan` $4) } | postfix_expression '<<<' execution_configuration error {% unclosed ($2 <--> $3) "<<<" } | postfix_expression '<<<' execution_configuration '>>>' '(' ')' { CudaCall $1 $3 [] ($1 `srcspan` $6) } | postfix_expression '<<<' execution_configuration '>>>'- '(' argument_expression_rlist error- {% unclosed ($5 <--> rev $6) "(" }+ '(' argument_expression_list error+ {% unclosed ($5 <--> $6) "(" } | postfix_expression '<<<' execution_configuration '>>>'- '(' argument_expression_rlist ')'- { CudaCall $1 $3 (rev $6) ($1 `srcspan` $7) }+ '(' argument_expression_list ')'+ { CudaCall $1 $3 $6 ($1 `srcspan` $7) } | postfix_expression '.' identifier_or_typedef { Member $1 $3 ($1 `srcspan` $3) }@@ -547,17 +564,6 @@ | '__builtin_va_arg' '(' assignment_expression ',' type_declaration ')' { BuiltinVaArg $3 $5 ($1 `srcspan` $6) } -argument_expression_rlist :: { RevList Exp }-argument_expression_rlist :- assignment_expression- { rsingleton $1 }- | ANTI_ARGS- { rsingleton (AntiArgs (getANTI_ARGS $1) (srclocOf $1)) }- | argument_expression_rlist ',' assignment_expression- { rcons $3 $1}- | argument_expression_rlist ',' ANTI_ARGS- { rcons (AntiArgs (getANTI_ARGS $3) (srclocOf $3)) $1 }- unary_expression :: { Exp } unary_expression : postfix_expression { $1 }@@ -713,8 +719,286 @@ constant_expression : conditional_expression { $1 } +argument_expression_list :: { [Exp] }+argument_expression_list :+ argument_expression_rlist { rev $1 }++argument_expression_rlist :: { RevList Exp }+argument_expression_rlist :+ assignment_expression+ { rsingleton $1 }+ | ANTI_ARGS+ { rsingleton (AntiArgs (getANTI_ARGS $1) (srclocOf $1)) }+ | argument_expression_rlist ',' assignment_expression+ { rcons $3 $1}+ | argument_expression_rlist ',' ANTI_ARGS+ { rcons (AntiArgs (getANTI_ARGS $3) (srclocOf $3)) $1 }++assignment_expression_list :: { [Exp] }+assignment_expression_list :+ assignment_expression_rlist { rev $1 }++assignment_expression_rlist :: { RevList Exp }+assignment_expression_rlist :+ assignment_expression+ { rsingleton $1 }+ | assignment_expression_rlist ',' assignment_expression+ { rcons $3 $1 }+ | assignment_expression_rlist ','+ { $1 }+ {------------------------------------------------------------------------------ -+ - _nlt expression variants+ -+ ------------------------------------------------------------------------------}++primary_expression_nlt :: { Exp }+primary_expression_nlt :+ identifier+ { Var $1 (srclocOf $1) }+ | constant+ { Const $1 (srclocOf $1) }+ | string_literal+ { Const (mkStringConst $1) (srclocOf $1) }+ | '(' expression_nlt ')'+ { $2 }+ | '(' expression_nlt error+ {% unclosed ($1 <--> $2) "(" }+ | '(' compound_statement ')'+ { StmExpr (mkBlockItems $2) ($1 `srcspan` $3) }+ | ANTI_ESC+ { AntiEscExp (getANTI_ESC $1) (srclocOf $1) }+ | ANTI_EXP+ { AntiExp (getANTI_EXP $1) (srclocOf $1) }++ -- Clang blocks+ | block_literal { $1 }++ -- Objective-C+ | objc_message_expression { $1 }+ | objc_at_expression { $1 }++ -- CUDA -- C++11 lambda-expression subset+ | cuda_lambda_expression { $1 }++postfix_expression_nlt :: { Exp }+postfix_expression_nlt :+ primary_expression_nlt+ { $1 }+ | postfix_expression_nlt '[' error+ {% unclosed (locOf $1) "[" }+ | postfix_expression_nlt '[' expression ']'+ { Index $1 $3 ($1 `srcspan` $4) }++ | postfix_expression_nlt '(' error+ {% unclosed (locOf $2) "(" }+ | postfix_expression_nlt '(' ')'+ { FnCall $1 [] ($1 `srcspan` $3) }+ | postfix_expression_nlt '(' argument_expression_nlt_list error+ {% unclosed ($2 <--> $3) "(" }+ | postfix_expression_nlt '(' argument_expression_nlt_list ')'+ { FnCall $1 $3 ($1 `srcspan` $4) }++ | postfix_expression_nlt '<<<' execution_configuration error+ {% unclosed ($2 <--> $3) "<<<" }+ | postfix_expression_nlt '<<<' execution_configuration '>>>' '(' ')'+ { CudaCall $1 $3 [] ($1 `srcspan` $6) }+ | postfix_expression_nlt '<<<' execution_configuration '>>>'+ '(' argument_expression_nlt_list error+ {% unclosed ($5 <--> $6) "(" }+ | postfix_expression_nlt '<<<' execution_configuration '>>>'+ '(' argument_expression_nlt_list ')'+ { CudaCall $1 $3 $6 ($1 `srcspan` $7) }++ | postfix_expression_nlt '.' identifier_or_typedef+ { Member $1 $3 ($1 `srcspan` $3) }+ | postfix_expression_nlt '->' identifier_or_typedef+ { PtrMember $1 $3 ($1 `srcspan` $3) }+ | postfix_expression_nlt '++'+ { PostInc $1 ($1 `srcspan` $2) }+ | postfix_expression_nlt '--'+ { PostDec $1 ($1 `srcspan` $2) }+ | '(' type_name ')' lbrace initializer_rlist '}'+ { CompoundLit ($2 :: Type) (rev $5) ($1 `srcspan` $6) }+ | '(' type_name ')' lbrace initializer_rlist ',' '}'+ { CompoundLit $2 (rev $5) ($1 `srcspan` $7) }++ -- GCC+ | '__builtin_va_arg' '(' assignment_expression_nlt ',' type_declaration ')'+ { BuiltinVaArg $3 $5 ($1 `srcspan` $6) }++unary_expression_nlt :: { Exp }+unary_expression_nlt :+ postfix_expression_nlt { $1 }+ | '++' unary_expression { PreInc $2 ($1 `srcspan` $2) }+ | '--' unary_expression { PreDec $2 ($1 `srcspan` $2) }+ | '&' cast_expression { UnOp AddrOf $2 ($1 `srcspan` $2) }+ | '*' cast_expression { UnOp Deref $2 ($1 `srcspan` $2) }+ | '+' cast_expression { UnOp Positive $2 ($1 `srcspan` $2) }+ | '-' cast_expression { UnOp Negate $2 ($1 `srcspan` $2) }+ | '~' cast_expression { UnOp Not $2 ($1 `srcspan` $2) }+ | '!' cast_expression { UnOp Lnot $2 ($1 `srcspan` $2) }+ | 'sizeof' unary_expression { SizeofExp $2 ($1 `srcspan` $2) }+ | 'sizeof' '(' type_name ')' { SizeofType $3 ($1 `srcspan` $4) }+ | 'sizeof' '(' type_name error {% unclosed ($2 <--> $3) "(" }++-- This lets us parse expressions like @foo = ...@ where @foo@ is a+-- typedef. Quite disgusting...+unary_expression_nlt_or_typedef :: { Exp }+unary_expression_nlt_or_typedef :+ unary_expression_nlt { $1 }+ | NAMED { Var (Id (getNAMED $1) (srclocOf $1)) (srclocOf $1) }++cast_expression_nlt :: { Exp }+cast_expression_nlt :+ unary_expression_nlt { $1 }+ | '(' type_name ')' cast_expression { Cast $2 $4 ($1 `srcspan` $4) }+ | '(' type_name error {% unclosed ($1 <--> $2) "(" }++multiplicative_expression_nlt :: { Exp }+multiplicative_expression_nlt :+ cast_expression_nlt+ { $1 }+ | multiplicative_expression_nlt '*' cast_expression+ { BinOp Mul $1 $3 ($1 `srcspan` $3) }+ | multiplicative_expression_nlt '/' cast_expression+ { BinOp Div $1 $3 ($1 `srcspan` $3) }+ | multiplicative_expression_nlt '%' cast_expression+ { BinOp Mod $1 $3 ($1 `srcspan` $3) }++additive_expression_nlt :: { Exp }+additive_expression_nlt :+ multiplicative_expression_nlt+ { $1 }+ | additive_expression_nlt '+' multiplicative_expression+ { BinOp Add $1 $3 ($1 `srcspan` $3) }+ | additive_expression_nlt '-' multiplicative_expression+ { BinOp Sub $1 $3 ($1 `srcspan` $3) }++shift_expression_nlt :: { Exp }+shift_expression_nlt :+ additive_expression_nlt+ { $1 }+ | shift_expression_nlt '<<' additive_expression+ { BinOp Lsh $1 $3 ($1 `srcspan` $3) }+ | shift_expression_nlt '>>' additive_expression+ { BinOp Rsh $1 $3 ($1 `srcspan` $3) }++relational_expression_nlt :: { Exp }+relational_expression_nlt :+ shift_expression_nlt+ { $1 }+ | relational_expression_nlt '<' shift_expression+ { BinOp Lt $1 $3 ($1 `srcspan` $3) }+ | relational_expression_nlt '>' shift_expression+ { BinOp Gt $1 $3 ($1 `srcspan` $3) }+ | relational_expression_nlt '<=' shift_expression+ { BinOp Le $1 $3 ($1 `srcspan` $3) }+ | relational_expression_nlt '>=' shift_expression+ { BinOp Ge $1 $3 ($1 `srcspan` $3) }++equality_expression_nlt :: { Exp }+equality_expression_nlt :+ relational_expression_nlt+ { $1 }+ | equality_expression_nlt '==' relational_expression+ { BinOp Eq $1 $3 ($1 `srcspan` $3) }+ | equality_expression_nlt '!=' relational_expression+ { BinOp Ne $1 $3 ($1 `srcspan` $3) }++and_expression_nlt :: { Exp }+and_expression_nlt :+ equality_expression_nlt+ { $1 }+ | and_expression_nlt '&' equality_expression+ { BinOp And $1 $3 ($1 `srcspan` $3) }++exclusive_or_expression_nlt :: { Exp }+exclusive_or_expression_nlt :+ and_expression_nlt+ { $1 }+ | exclusive_or_expression_nlt '^' and_expression_nlt+ { BinOp Xor $1 $3 ($1 `srcspan` $3) }++inclusive_or_expression_nlt :: { Exp }+inclusive_or_expression_nlt :+ exclusive_or_expression_nlt+ { $1 }+ | inclusive_or_expression_nlt '|' exclusive_or_expression+ { BinOp Or $1 $3 ($1 `srcspan` $3) }++logical_and_expression_nlt :: { Exp }+logical_and_expression_nlt :+ inclusive_or_expression_nlt+ { $1 }+ | logical_and_expression_nlt '&&' inclusive_or_expression+ { BinOp Land $1 $3 ($1 `srcspan` $3) }++logical_or_expression_nlt :: { Exp }+logical_or_expression_nlt :+ logical_and_expression_nlt+ { $1 }+ | logical_or_expression_nlt '||' logical_and_expression+ { BinOp Lor $1 $3 ($1 `srcspan` $3) }++conditional_expression_nlt :: { Exp }+conditional_expression_nlt :+ logical_or_expression_nlt+ { $1 }+ | logical_or_expression_nlt '?' expression ':' conditional_expression+ { Cond $1 $3 $5 ($1 `srcspan` $5) }++assignment_expression_nlt :: { Exp }+assignment_expression_nlt :+ conditional_expression_nlt+ { $1 }+ | unary_expression_nlt_or_typedef '=' assignment_expression+ { Assign $1 JustAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '*=' assignment_expression+ { Assign $1 MulAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '/=' assignment_expression+ { Assign $1 DivAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '%=' assignment_expression+ { Assign $1 ModAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '+=' assignment_expression+ { Assign $1 AddAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '-=' assignment_expression+ { Assign $1 SubAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '<<=' assignment_expression+ { Assign $1 LshAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '>>=' assignment_expression+ { Assign $1 RshAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '&=' assignment_expression+ { Assign $1 AndAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '^=' assignment_expression+ { Assign $1 XorAssign $3 ($1 `srcspan` $3) }+ | unary_expression_nlt_or_typedef '|=' assignment_expression+ { Assign $1 OrAssign $3 ($1 `srcspan` $3) }++expression_nlt :: { Exp }+expression_nlt :+ assignment_expression_nlt { $1 }+ | expression_nlt ',' assignment_expression { Seq $1 $3 ($1 `srcspan` $3) }++maybe_expression_nlt :: { Maybe Exp }+maybe_expression_nlt:+ {- empty -} { Nothing }+ | expression_nlt { Just $1 }++argument_expression_nlt_list :: { [Exp] }+argument_expression_nlt_list :+ assignment_expression_nlt+ { [$1] }+ | ANTI_ARGS+ { [AntiArgs (getANTI_ARGS $1) (srclocOf $1)] }+ | assignment_expression_nlt ',' argument_expression_rlist+ { $1 : rev $3 }+ | ANTI_ARGS ',' argument_expression_rlist+ { AntiArgs (getANTI_ARGS $1) (srclocOf $1) : rev $3 }++{------------------------------------------------------------------------------+ - - Declarations - ------------------------------------------------------------------------------}@@ -1207,10 +1491,16 @@ 'const' { TSconst (srclocOf $1) } | 'volatile' { TSvolatile (srclocOf $1) } + | ANTI_TYPE_QUAL { TSAntiTypeQual (getANTI_TYPE_QUAL $1) (srclocOf $1) }+ | ANTI_TYPE_QUALS { TSAntiTypeQuals (getANTI_TYPE_QUALS $1) (srclocOf $1) }+ -- C99 | 'inline' { TSinline (srclocOf $1) } | 'restrict' { TSrestrict (srclocOf $1) } + -- GCC+ | '__restrict' { TS__restrict (srclocOf $1) }+ -- CUDA | '__device__' { TSCUDAdevice (srclocOf $1) } | '__global__' { TSCUDAglobal (srclocOf $1) }@@ -1463,6 +1753,10 @@ | '^' pointer {% ($2 .) `liftM` mkBlockPtr (locOf $1) [] } | '^' type_qualifier_rlist pointer {% ($3 .) `liftM` mkBlockPtr (locOf $1) (rev $2) } +type_qualifier_list :: { [TypeQual] }+type_qualifier_list :+ type_qualifier_rlist { mkTypeQuals (rev $1) }+ type_qualifier_rlist :: { RevList TySpec } type_qualifier_rlist : type_qualifier { rsingleton $1 }@@ -1580,6 +1874,13 @@ } | ANTI_TYPE { AntiType (getANTI_TYPE $1) (srclocOf $1) }+ | type_qualifier_list ANTI_TYPE+ { let { v = getANTI_TYPE $2+ ; decl = declRoot (AntiTypeDecl v (srclocOf $2))+ }+ in+ Type (AntiTypeDeclSpec [] $1 v (srclocOf $2)) decl ($1 `srcspan` decl)+ } | ANTI_TYPE abstract_declarator { let { v = getANTI_TYPE $1 ; decl = $2 (AntiTypeDecl v (srclocOf $1))@@ -1587,6 +1888,13 @@ in Type (AntiTypeDeclSpec [] [] v (srclocOf $1)) decl ($1 `srcspan` decl) }+ | type_qualifier_list ANTI_TYPE abstract_declarator+ { let { v = getANTI_TYPE $2+ ; decl = $3 (AntiTypeDecl v (srclocOf $2))+ }+ in+ Type (AntiTypeDeclSpec [] $1 v (srclocOf $2)) decl ($1 `srcspan` decl)+ } abstract_declarator :: { Decl -> Decl } abstract_declarator :@@ -1634,7 +1942,7 @@ {% expected ["identifier"] (Just "'typename'")} -- GCC- | '__typeof__' '(' unary_expression ')'+ | '__typeof__' '(' unary_expression_nlt ')' { TStypeofExp $3 ($1 `srcspan` $4) } | '__typeof__' '(' type_name ')' { TStypeofType $3 ($1 `srcspan` $4) }@@ -1716,8 +2024,8 @@ | iteration_statement { $1 } | jump_statement { $1 } | '#pragma' { Pragma (getPRAGMA $1) (srclocOf $1) }- | '//' statement { mkCommentStm $1 $2 }- | ANTI_COMMENT statement { AntiComment (getANTI_COMMENT $1) $2 ($1 `srcspan` $2) }+ | comment statement { $1 $2 }+ | ANTI_ESCSTM { AntiEscStm (getANTI_ESCSTM $1) (srclocOf $1) } | ANTI_COMMENT error {% expected ["statement"] Nothing } | ANTI_PRAGMA { AntiPragma (getANTI_PRAGMA $1) (srclocOf $1) } | ANTI_STM { AntiStm (getANTI_STM $1) (srclocOf $1) }@@ -1728,16 +2036,16 @@ -- Objective-C | objc_at_statement { $1 } -comment :: { Stm }+comment :: { Stm -> Stm } comment :- '//' { mkEmptyCommentStm $1 }- | ANTI_COMMENT { AntiComment (getANTI_COMMENT $1) (Exp Nothing noLoc) (srclocOf $1) }+ '//' { mkCommentStm $1 }+ | ANTI_COMMENT { \stm -> AntiComment (getANTI_COMMENT $1) stm (srclocOf $1) } statement_list :: { [Stm] } statement_list :- comment { [$1] }+ comment { [$1 (Exp Nothing noLoc)] } | statement_rlist { rev $1 }- | statement_rlist comment { rev (rcons $2 $1) }+ | statement_rlist comment { rev (rcons ($2 (Exp Nothing noLoc)) $1) } statement_rlist :: { RevList Stm } statement_rlist :@@ -1746,21 +2054,31 @@ | ANTI_STMS { rsingleton (AntiStms (getANTI_STMS $1) (srclocOf $1)) } | comment ANTI_STMS- { AntiStms (getANTI_STMS $2) (srclocOf $2) `rcons` $1 `rcons` rnil }+ { AntiStms (getANTI_STMS $2) (srclocOf $2) `rcons` $1 (Exp Nothing noLoc) `rcons` rnil } | statement_rlist statement { $2 `rcons` $1 } | statement_rlist ANTI_STMS { AntiStms (getANTI_STMS $2) (srclocOf $2) `rcons` $1 } | statement_rlist comment ANTI_STMS- { AntiStms (getANTI_STMS $3) (srclocOf $3) `rcons` $2 `rcons` $1 }+ { AntiStms (getANTI_STMS $3) (srclocOf $3) `rcons` $2 (Exp Nothing noLoc) `rcons` $1 } labeled_statement :: { Stm } labeled_statement : identifier ':' error {% expected ["statement"] (Just "label") } | identifier ':' statement { Label $1 [] $3 ($1 `srcspan` $3) }- | 'case' constant_expression error {% expected ["`:'"] Nothing }+ | 'case' constant_expression error+ {% do { gcc_enabled <- useGccExts+ ; let options = if gcc_enabled then ["`:'", "`...'"] else ["`:'"]+ ; expected options Nothing } } | 'case' constant_expression ':' error {% expected ["statement"] Nothing } | 'case' constant_expression ':' statement { Case $2 $4 ($1 `srcspan` $4) }+ | 'case' constant_expression '...' constant_expression error+ {% expected ["`:'"] Nothing }+ | 'case' constant_expression '...' constant_expression ':' error+ {% expected ["statement"] Nothing }+ | 'case' constant_expression '...' constant_expression ':' statement+ {% gccOnly "To use ranges in case statements, enable GCC extensions"+ $ CaseRange $2 $4 $6 ($1 `srcspan` $6) } | 'default' error {% expected ["`:'"] (Just "`default'")} | 'default' ':' error {% expected ["statement"] Nothing } | 'default' ':' statement { Default $3 ($1 `srcspan` $3) }@@ -1771,16 +2089,16 @@ compound_statement :: { Stm } compound_statement: '{' begin_scope end_scope '}'- { Block [] ($1 `srcspan` $4) }+ { mkBlock [] ($1 `srcspan` $4) } | '{' begin_scope block_item_list end_scope '}'- { Block $3 ($1 `srcspan` $5) }+ { mkBlock $3 ($1 `srcspan` $5) } | '{' begin_scope error {% unclosed (locOf $3) "{" } block_item_list :: { [BlockItem] } block_item_list : block_item_rlist { rev $1 }- | block_item_rlist comment { rev (rcons (BlockStm $2) $1) }+ | block_item_rlist comment { rev (rcons (BlockStm ($2 (Exp Nothing noLoc))) $1) } block_item_rlist :: { RevList BlockItem } block_item_rlist :@@ -1815,9 +2133,9 @@ expression_statement :: { Stm } expression_statement:- ';' { Exp Nothing (srclocOf $1) }- | expression ';' { Exp (Just $1) ($1 `srcspan` $2) }- | expression error {% expected ["';'"] Nothing }+ ';' { Exp Nothing (srclocOf $1) }+ | expression_nlt ';' { Exp (Just $1) ($1 `srcspan` $2) }+ | expression_nlt error {% expected ["';'"] Nothing } selection_statement :: { Stm } selection_statement :@@ -1848,15 +2166,15 @@ {% expected ["expression", "declaration"] Nothing } | 'for' '(' declaration maybe_expression semi ')' statement { For (Left $3) $4 Nothing $7 ($1 `srcspan` $7) }- | 'for' '(' maybe_expression semi maybe_expression semi ')' statement+ | 'for' '(' maybe_expression_nlt semi maybe_expression semi ')' statement { For (Right $3) $5 Nothing $8 ($1 `srcspan` $8) }- | 'for' '(' maybe_expression semi maybe_expression semi error+ | 'for' '(' maybe_expression_nlt semi maybe_expression semi error {% unclosed ($2 <--> $6) "(" } | 'for' '(' declaration maybe_expression semi expression ')' statement { For (Left $3) $4 (Just $6) $8 ($1 `srcspan` $8) }- | 'for' '(' maybe_expression semi maybe_expression semi expression ')' statement+ | 'for' '(' maybe_expression_nlt semi maybe_expression semi expression ')' statement { For (Right $3) $5 (Just $7) $9 ($1 `srcspan` $9) }- | 'for' '(' maybe_expression semi maybe_expression semi expression error+ | 'for' '(' maybe_expression_nlt semi maybe_expression semi expression error {% unclosed ($2 <--> $7) "(" } jump_statement :: { Stm }@@ -1887,6 +2205,8 @@ translation_unit_rlist : {- empty -} { rnil }+ | comment+ { rnil } | translation_unit_rlist external_declaration { rcons $2 $1 } | translation_unit_rlist ANTI_EDECLS@@ -1894,6 +2214,20 @@ external_declaration :: { Definition } external_declaration :+ external_declaration_+ { $1 }+ | external_declaration_ comment+ { $1 }++ -- Objective-C+ | objc_class_declaration { $1 }+ | objc_interface { $1 }+ | objc_protocol_declaration { $1 }+ | objc_implementation { $1 }+ | objc_compatibility_alias { $1 }++external_declaration_ :: { Definition }+external_declaration_ : function_definition { FuncDef $1 (srclocOf $1) } | declaration@@ -1905,19 +2239,12 @@ | ANTI_EDECL { AntiEdecl (getANTI_EDECL $1) (srclocOf $1) } - -- Objective-C- | objc_class_declaration { $1 }- | objc_interface { $1 }- | objc_protocol_declaration { $1 }- | objc_implementation { $1 }- | objc_compatibility_alias { $1 }- function_definition :: { Func } function_definition : declaration_specifiers declarator compound_statement {% do{ let (dspec, declRoot) = $1 ; let (ident, declToDecl) = $2- ; let Block blockItems _ = $3+ ; let blockItems = mkBlockItems $3 ; let decl = declToDecl declRoot ; case decl of { Proto protoDecl args _ -> return $@@ -1937,7 +2264,7 @@ {% do{ let (dspec, declRoot) = $1 ; let (ident, declToDecl) = $2 ; let argDecls = $3- ; let Block blockItems _ = $4+ ; let blockItems = mkBlockItems $4 ; let decl = declToDecl declRoot ; case decl of { OldProto protoDecl args _ -> return $@@ -2015,13 +2342,17 @@ attribute_rlist : attrib { rsingleton $1 } | attribute_rlist ',' attrib { rcons $3 $1 }+ | ANTI_ATTRS+ { rsingleton $ AntiAttrs (getANTI_ATTRS $1) (srclocOf $1) } attrib :: { Attr } attrib : attrib_name { Attr $1 [] (srclocOf $1)}- | attrib_name '(' argument_expression_rlist ')'- { Attr $1 (rev $3) ($1 `srcspan` $4) }+ | attrib_name '(' argument_expression_list ')'+ { Attr $1 $3 ($1 `srcspan` $4) }+ | ANTI_ATTR+ { AntiAttr (getANTI_ATTR $1) (srclocOf $1) } attrib_name :: { Id } attrib_name :@@ -2145,23 +2476,22 @@ block_literal : '^' attribute_specifiers_opt compound_statement {% do { assertBlocksEnabled ($1 <--> $3) "To use blocks, enable the blocks language extension"- ; let Block items _ = $3+ ; let items = mkBlockItems $3 ; return $ BlockLit (BlockVoid (srclocOf $1)) $2 items ($1 `srcspan` $3) } } | '^' '(' parameter_list ')' attribute_specifiers_opt compound_statement {% do { assertBlocksEnabled ($1 <--> $6) "To use blocks, enable blocks language extension"- ; let Block items _ = $6+ ; let items = mkBlockItems $6 ; return $ BlockLit (BlockParam $3 ($2 `srcspan` $4)) $5 items ($1 `srcspan` $6) } } | '^' specifier_qualifier_list abstract_declarator attribute_specifiers_opt compound_statement {% do { assertBlocksEnabled ($1 <--> $5) "To use blocks, enable blocks language extension"- ; let { decl = $3 (declRoot $2)- ; Block items _ = $5- }- ; dspec <- mkDeclSpec $2- ; let typeLoc = dspec `srcspan` decl+ ; let decl = $3 (declRoot $2)+ ; let items = mkBlockItems $5+ ; dspec <- mkDeclSpec $2+ ; let typeLoc = dspec `srcspan` decl ; return $ BlockLit (BlockType (Type dspec decl typeLoc) typeLoc) $4 items ($1 `srcspan` $5) } }@@ -2224,15 +2554,15 @@ objc_at_statement :: { Stm } objc_at_statement : '@' 'try' compound_statement objc_catch_statement_rlist '@' 'finally' compound_statement- { let { Block tryItems _ = $3- ; Block finallyItems _ = $7+ { let { tryItems = mkBlockItems $3+ ; finallyItems = mkBlockItems $7 } in ObjCTry tryItems (rev $4) (Just finallyItems) ($1 `srcspan` $7) } | '@' 'try' compound_statement objc_catch_statement_rlist- {% do { let { Block tryItems _ = $3- ; catchStmts = rev $4+ {% do { let { tryItems = mkBlockItems $3+ ; catchStmts = rev $4 } ; when (null catchStmts) $ throw $ ParserException ($1 <--> $3) $@@ -2253,12 +2583,12 @@ | '@' 'throw' error {% expected ["';'", "expression"] Nothing } | '@' 'synchronized' '(' expression ')' compound_statement- { let Block items _ = $6+ { let items = mkBlockItems $6 in ObjCSynchronized $4 items ($1 `srcspan` $6) } | '@' 'autoreleasepool' compound_statement- { let Block items _ = $3+ { let items = mkBlockItems $3 in ObjCAutoreleasepool items ($1 `srcspan` $3) }@@ -2268,11 +2598,11 @@ {- empty -} { rnil } | objc_catch_statement_rlist '@' 'catch' '(' parameter_declaration ')' compound_statement- { let Block items _ = $7+ { let items = mkBlockItems $7 in rcons (ObjCCatch (Just $5) items ($2 `srcspan` $7)) $1 } | objc_catch_statement_rlist '@' 'catch' '(' '...' ')' compound_statement- { let Block items _ = $7+ { let items = mkBlockItems $7 in rcons (ObjCCatch Nothing items ($2 `srcspan` $7)) $1 } @@ -2305,11 +2635,7 @@ objc_receiver :: { ObjCRecv } objc_receiver :- NAMED- { ObjCRecvTypeName (Id (getNAMED $1) (srclocOf $1)) (srclocOf $1) }- | OBJCNAMED- { ObjCRecvClassName (Id (getOBJCNAMED $1) (srclocOf $1)) (srclocOf $1) }- | expression+ expression { case $1 of Var (Id "super" _) loc -> ObjCRecvSuper loc _ -> ObjCRecvExp $1 (srclocOf $1)@@ -2441,10 +2767,8 @@ { ObjCLitBool True ($1 `srcspan` $2) } | '@' '[' ']' { ObjCLitArray [] ($1 `srcspan` $3) }- | '@' '[' assignment_expression_rlist ']'- { ObjCLitArray (rev $3) ($1 `srcspan` $4) }- | '@' '[' assignment_expression_rlist ',' ']'- { ObjCLitArray (rev $3) ($1 `srcspan` $5) }+ | '@' '[' assignment_expression_list ']'+ { ObjCLitArray $3 ($1 `srcspan` $4) } | '@' lbrace '}' { ObjCLitDict [] ($1 `srcspan` $3) } | '@' lbrace objc_key_value_rlist '}'@@ -2927,14 +3251,14 @@ objc_method_definition :: { Definition } objc_method_definition : objc_method_proto semi compound_statement- { let Block stmts loc = $3+ { let stmts = mkBlockItems $3 in- ObjCMethDef $1 stmts ($1 `srcspan` loc)+ ObjCMethDef $1 stmts ($1 `srcspan` $3) }- | objc_method_proto compound_statement- { let Block stmts loc = $2+ | objc_method_proto compound_statement+ { let stmts = mkBlockItems $2 in- ObjCMethDef $1 stmts ($1 `srcspan` loc)+ ObjCMethDef $1 stmts ($1 `srcspan` $2) } | ANTI_OBJC_METHOD_DEF { AntiObjCMeth (getANTI_OBJC_METHOD_DEF $1) (srclocOf $1) }@@ -2959,13 +3283,52 @@ - CUDA - ------------------------------------------------------------------------------}+cuda_lambda_expression :: { Exp }+cuda_lambda_expression : cuda_lambda_introducer cuda_lambda_declarator compound_statement+ {% do { assertCudaEnabled ($1 <--> $3) "To use lambda-expressions, enable support for CUDA"+ ; let items = mkBlockItems $3+ ; return $ Lambda $1 $2 items ($1 `srcspan` $3)+ }+ } +cuda_lambda_declarator :: { Maybe LambdaDeclarator }+cuda_lambda_declarator :+ cuda_lambda_param_list cuda_lambda_mutable cuda_lambda_return_type { Just $ LambdaDeclarator $1 $2 $3 ($1 `srcspan` $3) }+ | {- empty -} { Nothing }++cuda_lambda_param_list :: { Params }+cuda_lambda_param_list :+ '(' ')' { Params [] False ($1 `srcspan` $2) }+ | '(' parameter_type_list ')' { $2 }++cuda_lambda_mutable :: { Bool }+cuda_lambda_mutable :+ 'mutable' { True }+ | {- Empty -} { False }++cuda_lambda_return_type :: { Maybe Type }+cuda_lambda_return_type :+ {- Empty -} { Nothing }+ -- FIXME: There should be possibility to explicitly state returned type.+ -- | '->' type_name { Just ($2::Type) }++cuda_lambda_introducer :: { LambdaIntroducer }+cuda_lambda_introducer :+ '[' cuda_lambda_capture_items ']' { LambdaIntroducer $2 ($1 `srcspan` $3)}++cuda_lambda_capture_items :: { [CaptureListEntry] }+cuda_lambda_capture_items :+ '&' { [DefaultByReference] }+ | '=' { [DefaultByValue] }+ | {- empty -} { [] }++ execution_configuration :: { ExeConfig } execution_configuration :- argument_expression_rlist- {%do { let args = rev $1+ argument_expression_list+ {%do { let args = $1 ; when (length args < 2 || length args > 4) $ do- parserError (locOf (rev $1)) $+ parserError (locOf args) $ text "execution context should have 2-4 arguments, but saw" <+> ppr (length args) ; return $@@ -3030,12 +3393,15 @@ getANTI_ENUM (L _ (T.Tanti_enum v)) = v getANTI_ENUMS (L _ (T.Tanti_enums v)) = v getANTI_ESC (L _ (T.Tanti_esc v)) = v+getANTI_ESCSTM (L _ (T.Tanti_escstm v)) = v getANTI_EDECL (L _ (T.Tanti_edecl v)) = v getANTI_EDECLS (L _ (T.Tanti_edecls v)) = v getANTI_ITEM (L _ (T.Tanti_item v)) = v getANTI_ITEMS (L _ (T.Tanti_items v)) = v getANTI_STM (L _ (T.Tanti_stm v)) = v getANTI_STMS (L _ (T.Tanti_stms v)) = v+getANTI_TYPE_QUAL (L _ (T.Tanti_type_qual v)) = v+getANTI_TYPE_QUALS (L _ (T.Tanti_type_quals v)) = v getANTI_TYPE (L _ (T.Tanti_type v)) = v getANTI_SPEC (L _ (T.Tanti_spec v)) = v getANTI_PARAM (L _ (T.Tanti_param v)) = v@@ -3044,6 +3410,8 @@ getANTI_COMMENT (L _ (T.Tanti_comment v)) = v getANTI_INIT (L _ (T.Tanti_init v)) = v getANTI_INITS (L _ (T.Tanti_inits v)) = v+getANTI_ATTR (L _ (T.Tanti_attr v)) = v+getANTI_ATTRS (L _ (T.Tanti_attrs v)) = v -- -- Objective-C@@ -3073,27 +3441,24 @@ locate :: Loc -> (SrcLoc -> a) -> L a locate loc f = L loc (f (SrcLoc loc)) -data DeclTySpec = DeclTySpec DeclSpec !SrcLoc- | AntiDeclTySpec String !SrcLoc- data TySpec = TSauto !SrcLoc | TSregister !SrcLoc | TSstatic !SrcLoc | TSextern (Maybe Linkage) !SrcLoc | TStypedef !SrcLoc - | TSconst !SrcLoc+ | TSconst !SrcLoc | TSvolatile !SrcLoc - | TSsigned !SrcLoc+ | TSsigned !SrcLoc | TSunsigned !SrcLoc - | TSvoid !SrcLoc- | TSchar !SrcLoc- | TSshort !SrcLoc- | TSint !SrcLoc- | TSlong !SrcLoc- | TSfloat !SrcLoc+ | TSvoid !SrcLoc+ | TSchar !SrcLoc+ | TSshort !SrcLoc+ | TSlong !SrcLoc+ | TSint !SrcLoc+ | TSfloat !SrcLoc | TSdouble !SrcLoc | TSstruct (Maybe Id) (Maybe [FieldGroup]) [Attr] !SrcLoc@@ -3101,18 +3466,22 @@ | TSenum (Maybe Id) [CEnum] [Attr] !SrcLoc | TSnamed Id [Id] !SrcLoc -- the '[Id]' are Objective-C protocol references + | TSAntiTypeQual String !SrcLoc+ | TSAntiTypeQuals String !SrcLoc+ -- C99- | TS_Bool !SrcLoc- | TS_Complex !SrcLoc+ | TS_Bool !SrcLoc+ | TS_Complex !SrcLoc | TS_Imaginary !SrcLoc- | TSinline !SrcLoc- | TSrestrict !SrcLoc+ | TSinline !SrcLoc+ | TSrestrict !SrcLoc -- GCC | TStypeofExp Exp !SrcLoc | TStypeofType Type !SrcLoc | TSva_list !SrcLoc | TSAttr Attr+ | TS__restrict !SrcLoc -- Clang blocks | TS__block !SrcLoc@@ -3139,70 +3508,71 @@ | TSCLreadonly !SrcLoc | TSCLwriteonly !SrcLoc | TSCLkernel !SrcLoc--instance Located DeclTySpec where- locOf (DeclTySpec _ loc) = locOf loc- locOf (AntiDeclTySpec _ loc) = locOf loc+ deriving (Eq, Ord, Show) instance Located TySpec where- locOf (TSauto loc) = locOf loc- locOf (TSregister loc) = locOf loc- locOf (TSstatic loc) = locOf loc- locOf (TSextern _ loc) = locOf loc- locOf (TStypedef loc) = locOf loc+ locOf (TSauto loc) = locOf loc+ locOf (TSregister loc) = locOf loc+ locOf (TSstatic loc) = locOf loc+ locOf (TSextern _ loc) = locOf loc+ locOf (TStypedef loc) = locOf loc - locOf (TSconst loc) = locOf loc- locOf (TSvolatile loc) = locOf loc+ locOf (TSconst loc) = locOf loc+ locOf (TSvolatile loc) = locOf loc - locOf (TSsigned loc) = locOf loc- locOf (TSunsigned loc) = locOf loc+ locOf (TSsigned loc) = locOf loc+ locOf (TSunsigned loc) = locOf loc - locOf (TSvoid loc) = locOf loc- locOf (TSchar loc) = locOf loc- locOf (TSshort loc) = locOf loc- locOf (TSint loc) = locOf loc- locOf (TSlong loc) = locOf loc- locOf (TSfloat loc) = locOf loc- locOf (TSdouble loc) = locOf loc+ locOf (TSvoid loc) = locOf loc+ locOf (TSchar loc) = locOf loc+ locOf (TSshort loc) = locOf loc+ locOf (TSint loc) = locOf loc+ locOf (TSlong loc) = locOf loc+ locOf (TSfloat loc) = locOf loc+ locOf (TSdouble loc) = locOf loc - locOf (TSstruct _ _ _ loc) = locOf loc- locOf (TSunion _ _ _ loc) = locOf loc- locOf (TSenum _ _ _ loc) = locOf loc- locOf (TSnamed _ _ loc) = locOf loc+ locOf (TSstruct _ _ _ loc) = locOf loc+ locOf (TSunion _ _ _ loc) = locOf loc+ locOf (TSenum _ _ _ loc) = locOf loc+ locOf (TSnamed _ _ loc) = locOf loc - locOf (TS_Bool loc) = locOf loc- locOf (TS_Complex loc) = locOf loc- locOf (TS_Imaginary loc) = locOf loc- locOf (TSinline loc) = locOf loc- locOf (TSrestrict loc) = locOf loc+ locOf (TSAntiTypeQual _ loc) = locOf loc+ locOf (TSAntiTypeQuals _ loc) = locOf loc - locOf (TStypeofExp _ loc) = locOf loc- locOf (TStypeofType _ loc) = locOf loc- locOf (TSva_list loc) = locOf loc- locOf (TSAttr attr) = locOf attr+ locOf (TS_Bool loc) = locOf loc+ locOf (TS_Complex loc) = locOf loc+ locOf (TS_Imaginary loc) = locOf loc+ locOf (TSinline loc) = locOf loc+ locOf (TSrestrict loc) = locOf loc - locOf (TS__block loc) = locOf loc+ locOf (TStypeofExp _ loc) = locOf loc+ locOf (TStypeofType _ loc) = locOf loc+ locOf (TSva_list loc) = locOf loc+ locOf (TSAttr attr) = locOf attr+ locOf (TS__restrict loc) = locOf loc - locOf (TSObjC__weak loc) = locOf loc- locOf (TSObjC__strong loc) = locOf loc+ locOf (TS__block loc) = locOf loc++ locOf (TSObjC__weak loc) = locOf loc+ locOf (TSObjC__strong loc) = locOf loc locOf (TSObjC__unsafe_unretained loc)- = locOf loc+ = locOf loc - locOf (TSCUDAdevice loc) = locOf loc- locOf (TSCUDAglobal loc) = locOf loc- locOf (TSCUDAhost loc) = locOf loc- locOf (TSCUDAconstant loc) = locOf loc- locOf (TSCUDAshared loc) = locOf loc- locOf (TSCUDArestrict loc) = locOf loc- locOf (TSCUDAnoinline loc) = locOf loc+ locOf (TSCUDAdevice loc) = locOf loc+ locOf (TSCUDAglobal loc) = locOf loc+ locOf (TSCUDAhost loc) = locOf loc+ locOf (TSCUDAconstant loc) = locOf loc+ locOf (TSCUDAshared loc) = locOf loc+ locOf (TSCUDArestrict loc) = locOf loc+ locOf (TSCUDAnoinline loc) = locOf loc - locOf (TSCLprivate loc) = locOf loc- locOf (TSCLlocal loc) = locOf loc- locOf (TSCLglobal loc) = locOf loc- locOf (TSCLconstant loc) = locOf loc- locOf (TSCLreadonly loc) = locOf loc- locOf (TSCLwriteonly loc) = locOf loc- locOf (TSCLkernel loc) = locOf loc+ locOf (TSCLprivate loc) = locOf loc+ locOf (TSCLlocal loc) = locOf loc+ locOf (TSCLglobal loc) = locOf loc+ locOf (TSCLconstant loc) = locOf loc+ locOf (TSCLreadonly loc) = locOf loc+ locOf (TSCLwriteonly loc) = locOf loc+ locOf (TSCLkernel loc) = locOf loc instance Pretty TySpec where ppr (TSauto _) = text "auto"@@ -3248,6 +3618,7 @@ ppr (TStypeofType ty _) = text "__typeof__" <> parens (ppr ty) ppr (TSva_list _) = text "__builtin_va_list" ppr (TSAttr attr) = ppr [attr]+ ppr (TS__restrict _) = text "__restrict" ppr (TS__block _) = text "__block" @@ -3271,9 +3642,6 @@ ppr (TSCLwriteonly _) = text "write_only" ppr (TSCLkernel _) = text "__kernel" -instance Show TySpec where- showsPrec p = shows . pprPrec p- isStorage :: TySpec -> Bool isStorage (TSauto _) = True isStorage (TSregister _) = True@@ -3302,51 +3670,57 @@ mk _ = error "internal error in mkStorage" isTypeQual :: TySpec -> Bool-isTypeQual (TSconst _) = True-isTypeQual (TSvolatile _) = True-isTypeQual (TSinline _) = True-isTypeQual (TSrestrict _) = True-isTypeQual (TSAttr _) = True-isTypeQual (TSCUDAdevice _) = True-isTypeQual (TSCUDAglobal _) = True-isTypeQual (TSCUDAhost _) = True-isTypeQual (TSCUDAconstant _) = True-isTypeQual (TSCUDAshared _) = True-isTypeQual (TSCUDArestrict _) = True-isTypeQual (TSCUDAnoinline _) = True-isTypeQual (TSCLprivate _) = True-isTypeQual (TSCLlocal _) = True-isTypeQual (TSCLglobal _) = True-isTypeQual (TSCLconstant _) = True-isTypeQual (TSCLreadonly _) = True-isTypeQual (TSCLwriteonly _) = True-isTypeQual (TSCLkernel _) = True-isTypeQual _ = False+isTypeQual (TSconst _) = True+isTypeQual (TSvolatile _) = True+isTypeQual (TSAntiTypeQual {}) = True+isTypeQual (TSAntiTypeQuals {}) = True+isTypeQual (TSinline _) = True+isTypeQual (TSrestrict _) = True+isTypeQual (TSAttr _) = True+isTypeQual (TS__restrict _) = True+isTypeQual (TSCUDAdevice _) = True+isTypeQual (TSCUDAglobal _) = True+isTypeQual (TSCUDAhost _) = True+isTypeQual (TSCUDAconstant _) = True+isTypeQual (TSCUDAshared _) = True+isTypeQual (TSCUDArestrict _) = True+isTypeQual (TSCUDAnoinline _) = True+isTypeQual (TSCLprivate _) = True+isTypeQual (TSCLlocal _) = True+isTypeQual (TSCLglobal _) = True+isTypeQual (TSCLconstant _) = True+isTypeQual (TSCLreadonly _) = True+isTypeQual (TSCLwriteonly _) = True+isTypeQual (TSCLkernel _) = True+isTypeQual _ = False mkTypeQuals :: [TySpec] -> [TypeQual] mkTypeQuals specs = map mk (filter isTypeQual specs) where mk :: TySpec -> TypeQual- mk (TSconst loc) = Tconst loc- mk (TSvolatile loc) = Tvolatile loc- mk (TSinline loc) = Tinline loc- mk (TSrestrict loc) = Trestrict loc- mk (TSAttr attr) = TAttr attr- mk (TSCUDAdevice loc) = TCUDAdevice loc- mk (TSCUDAglobal loc) = TCUDAglobal loc- mk (TSCUDAhost loc) = TCUDAhost loc- mk (TSCUDAconstant loc) = TCUDAconstant loc- mk (TSCUDAshared loc) = TCUDAshared loc- mk (TSCUDArestrict loc) = TCUDArestrict loc- mk (TSCUDAnoinline loc) = TCUDAnoinline loc- mk (TSCLprivate loc) = TCLprivate loc- mk (TSCLlocal loc) = TCLlocal loc- mk (TSCLglobal loc) = TCLglobal loc- mk (TSCLconstant loc) = TCLconstant loc- mk (TSCLreadonly loc) = TCLreadonly loc- mk (TSCLwriteonly loc) = TCLwriteonly loc- mk (TSCLkernel loc) = TCLkernel loc- mk _ = error "internal error in mkTypeQual"+ mk (TSconst loc) = Tconst loc+ mk (TSvolatile loc) = Tvolatile loc+ mk (TSAntiTypeQual v loc) = AntiTypeQual v loc+ mk (TSAntiTypeQuals v loc) = AntiTypeQuals v loc+ mk (TSinline loc) = Tinline loc+ mk (TSrestrict loc) = Trestrict loc+ mk (TSAttr attr) = TAttr attr+ mk (TS__restrict loc) = T__restrict loc+ mk (TSCUDAdevice loc) = TCUDAdevice loc+ mk (TSCUDAglobal loc) = TCUDAglobal loc+ mk (TSCUDAhost loc) = TCUDAhost loc+ mk (TSCUDAconstant loc) = TCUDAconstant loc+ mk (TSCUDAshared loc) = TCUDAshared loc+ mk (TSCUDArestrict loc) = TCUDArestrict loc+ mk (TSCUDAnoinline loc) = TCUDAnoinline loc+ mk (TSCLprivate loc) = TCLprivate loc+ mk (TSCLlocal loc) = TCLlocal loc+ mk (TSCLglobal loc) = TCLglobal loc+ mk (TSCLconstant loc) = TCLconstant loc+ mk (TSCLreadonly loc) = TCLreadonly loc+ mk (TSCLwriteonly loc) = TCLwriteonly loc+ mk (TSCLkernel loc) = TCLkernel loc+ mk _ = error "internal error in mkTypeQual" isSign :: TySpec -> Bool isSign (TSsigned _) = True@@ -3407,7 +3781,7 @@ mkDeclSpec :: [TySpec] -> P DeclSpec mkDeclSpec specs =- go rest+ go (sort rest) where storage ::[Storage] storage = mkStorage specs@@ -3444,10 +3818,6 @@ sign <- mkSign specs return $ cdeclSpec storage quals (Tshort sign (srclocOf rest)) - go [TSint _, TSshort _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tshort sign (srclocOf rest))- go [TSint l] = do sign <- mkSign specs return $ cdeclSpec storage quals (Tint sign l)@@ -3460,10 +3830,6 @@ sign <- mkSign specs return $ cdeclSpec storage quals (Tlong sign (srclocOf rest)) - go [TSint _, TSlong _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong sign (srclocOf rest))- go [TSlong _, TSlong _] = do sign <- mkSign specs return $ cdeclSpec storage quals (Tlong_long sign (srclocOf rest))@@ -3472,14 +3838,6 @@ sign <- mkSign specs return $ cdeclSpec storage quals (Tlong_long sign (srclocOf rest)) - go [TSlong _, TSint _, TSlong _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong_long sign (srclocOf rest))-- go [TSint _, TSlong _, TSlong _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong_long sign (srclocOf rest))- go [TSfloat loc] = do checkNoSign specs "sign specified for float type" return $ cdeclSpec storage quals (Tfloat loc)@@ -3492,10 +3850,30 @@ checkNoSign specs "sign specified for long double type" return $ cdeclSpec storage quals (Tlong_double (srclocOf rest)) - go [TSdouble _, TSlong _] = do- checkNoSign specs "sign specified for long double type"- return $ cdeclSpec storage quals (Tlong_double (srclocOf rest))+ go [TSfloat _, TS_Complex _] = do+ checkNoSign specs "sign specified for float _Complex type"+ return $ cdeclSpec storage quals (Tfloat_Complex (srclocOf rest)) + go [TSdouble _, TS_Complex _] = do+ checkNoSign specs "sign specified for double _Complex type"+ return $ cdeclSpec storage quals (Tdouble_Complex (srclocOf rest))++ go [TSlong _, TSdouble _, TS_Complex _] = do+ checkNoSign specs "sign specified for long double _Complex type"+ return $ cdeclSpec storage quals (Tlong_double_Complex (srclocOf rest))++ go [TSfloat _, TS_Imaginary _] = do+ checkNoSign specs "sign specified for float _Imaginary type"+ return $ cdeclSpec storage quals (Tfloat_Imaginary (srclocOf rest))++ go [TSdouble _, TS_Imaginary _] = do+ checkNoSign specs "sign specified for double _Imaginary type"+ return $ cdeclSpec storage quals (Tdouble_Imaginary (srclocOf rest))++ go [TSlong _, TSdouble _, TS_Imaginary _] = do+ checkNoSign specs "sign specified for long double _Imaginary type"+ return $ cdeclSpec storage quals (Tlong_double_Imaginary (srclocOf rest))+ -- Attributes for structs, unions, and enums may appear after the closing -- brace. If this happens, they end up in the list of TypeQuals. We pull -- them out here and associate them with the struct/union/enum.@@ -3530,14 +3908,6 @@ checkNoSign specs "sign specified for _Bool" return $ cdeclSpec storage quals (T_Bool l) - go [TS_Complex l] = do- checkNoSign specs "sign specified for _Complex"- return $ cdeclSpec storage quals (T_Complex l)-- go [TS_Imaginary l] = do- checkNoSign specs "sign specified for _Imaginary"- return $ cdeclSpec storage quals (T_Imaginary l)- go [TSva_list l] = do checkNoSign specs "sign specified for __builtin_va_list" return $ cdeclSpec storage quals (Tva_list l)@@ -3653,6 +4023,28 @@ objc_enabled <- useObjCExts unless objc_enabled $ throw $ ParserException loc $ text errMsg++assertCudaEnabled :: Loc -> String -> P ()+assertCudaEnabled loc errMsg = do+ cuda_enabled <- useCUDAExts+ unless cuda_enabled $+ throw $ ParserException loc $ text errMsg++gccOnly :: Located a => String -> a -> P a+gccOnly errMsg x = do+ gcc_enabled <- useGccExts+ unless gcc_enabled $+ throw $ ParserException (locOf x) $ text errMsg+ pure x++mkBlock :: [BlockItem] -> SrcLoc -> Stm+mkBlock items@[BlockStm AntiStms{}] sloc = Block items sloc+mkBlock [BlockStm stm] _ = stm+mkBlock items sloc = Block items sloc++mkBlockItems :: Stm -> [BlockItem]+mkBlockItems (Block items _) = items+mkBlockItems stm = [BlockStm stm] mkCommentStm :: L T.Token -> Stm -> Stm mkCommentStm tok stm = Comment (getCOMMENT tok) stm (srclocOf tok)
Language/C/Parser/Tokens.hs view
@@ -1,11 +1,11 @@ -- | -- Module : Language.C.Parser.Tokens--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- (c) Manuel M T Chakravarty 2013--- (c) Drexel University 2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- (c) 2013 Manuel M T Chakravarty+-- (c) 2013-2016 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu module Language.C.Parser.Tokens ( Token(..),@@ -22,6 +22,7 @@ import Data.Maybe (fromMaybe) import Data.Word import Text.PrettyPrint.Mainland+import Text.PrettyPrint.Mainland.Class import Language.C.Syntax (Extensions(..), Signed(..))@@ -32,9 +33,9 @@ | TintConst (String, Signed, Integer) | TlongIntConst (String, Signed, Integer) | TlongLongIntConst (String, Signed, Integer)- | TfloatConst (String, Rational)- | TdoubleConst (String, Rational)- | TlongDoubleConst (String, Rational)+ | TfloatConst (String, Float)+ | TdoubleConst (String, Double)+ | TlongDoubleConst (String, Double) | TcharConst (String, Char) | TstringConst (String, String) | Tidentifier String@@ -148,12 +149,15 @@ | Tanti_enum String | Tanti_enums String | Tanti_esc String+ | Tanti_escstm String | Tanti_edecl String | Tanti_edecls String | Tanti_item String | Tanti_items String | Tanti_stm String | Tanti_stms String+ | Tanti_type_qual String+ | Tanti_type_quals String | Tanti_type String | Tanti_spec String | Tanti_param String@@ -162,6 +166,8 @@ | Tanti_comment String | Tanti_init String | Tanti_inits String+ | Tanti_attr String+ | Tanti_attrs String -- C99 | TBool@@ -177,8 +183,10 @@ | Tbuiltin_va_list | Textension | Ttypeof+ | T__restrict -- CUDA+ | TCUDAmutable | TCUDA3lt | TCUDA3gt | TCUDAdevice@@ -291,12 +299,15 @@ show (Tanti_enum s) = showAnti "enum" s show (Tanti_enums s) = showAnti "enums" s show (Tanti_esc s) = showAnti "esc" s+ show (Tanti_escstm s) = showAnti "escstm" s show (Tanti_edecl s) = showAnti "edecl" s show (Tanti_edecls s) = showAnti "edecls" s show (Tanti_item s) = showAnti "item" s show (Tanti_items s) = showAnti "items" s show (Tanti_stm s) = showAnti "stm" s show (Tanti_stms s) = showAnti "stms" s+ show (Tanti_type_quals s) = showAnti "tyquals" s+ show (Tanti_type_qual s) = showAnti "tyqual" s show (Tanti_type s) = showAnti "ty" s show (Tanti_spec s) = showAnti "spec" s show (Tanti_param s) = showAnti "param" s@@ -305,6 +316,8 @@ show (Tanti_comment s) = showAnti "comment" s show (Tanti_init s) = showAnti "init" s show (Tanti_inits s) = showAnti "inits" s+ show (Tanti_attr s) = showAnti "attr" s+ show (Tanti_attrs s) = showAnti "attrs" s -- -- Objective C@@ -448,6 +461,7 @@ (Tbuiltin_va_list, "__builtin_va_list"), (Textension, "__extension__"), (Ttypeof, "typeof"),+ (T__restrict, "__restrict"), -- -- Clang extensions@@ -490,6 +504,7 @@ -- -- CUDA extensions --+ (TCUDAmutable, "mutable"), (TCUDAdevice, "__device__"), (TCUDAglobal, "__global__"), (TCUDAhost, "__host__"),@@ -566,8 +581,8 @@ ("__const__", Tconst, Just [Gcc]), ("__inline", Tinline, Just [Gcc]), ("__inline__", Tinline, Just [Gcc]),- ("__restrict", Trestrict, Just [Gcc]),- ("__restrict__", Trestrict, Just [Gcc]),+ ("__restrict", T__restrict, Just [Gcc]),+ ("__restrict__", T__restrict, Just [Gcc]), ("typeof", Ttypeof, Just [Gcc]), ("__typeof", Ttypeof, Just [Gcc]), ("__typeof__", Ttypeof, Just [Gcc]),@@ -613,6 +628,7 @@ -- -- CUDA --+ ("mutable", TCUDAmutable, Just [CUDA]), ("__device__", TCUDAdevice, Just [CUDA]), ("__global__", TCUDAglobal, Just [CUDA]), ("__host__", TCUDAhost, Just [CUDA]),
Language/C/Pretty.hs view
@@ -1,23 +1,31 @@ {-# LANGUAGE CPP #-}-{-# LANGUAGE DeriveDataTypeable #-} {-# LANGUAGE FlexibleInstances #-} {-# OPTIONS_GHC -fno-warn-orphans #-} -- | -- Module : Language.C.Pretty--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- : (c) Drexel University 2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- : (c) 2013-2016 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu module Language.C.Pretty where import Data.Char (isAlphaNum, isLower) import Data.Loc+import Data.Maybe (isJust)+#if !(MIN_VERSION_base(4,9,0))+import Data.Monoid (Monoid(..), (<>))+#endif /* !(MIN_VERSION_base(4,9,0)) */+#if MIN_VERSION_base(4,9,0) && !(MIN_VERSION_base(4,11,0))+import Data.Semigroup (Semigroup(..))+#endif+ import Language.C.Syntax import Text.PrettyPrint.Mainland+import Text.PrettyPrint.Mainland.Class pprLoc :: SrcLoc -> Doc -> Doc pprLoc loc doc = srcloc loc <> doc@@ -37,6 +45,7 @@ infixr_ :: Int -> Fixity infixr_ = Fixity RightAssoc +-- | Pretty print infix binary operators infixop :: (Pretty a, Pretty b, Pretty op, CFixity op) => Int -- ^ precedence of context -> op -- ^ operator@@ -44,7 +53,7 @@ -> b -- ^ right argument -> Doc infixop prec op l r =- parensIf (prec > opPrec) $+ parensOp prec op $ pprPrec leftPrec l <+> ppr op <+/> pprPrec rightPrec r where leftPrec | opAssoc == RightAssoc = opPrec + 1@@ -55,18 +64,39 @@ Fixity opAssoc opPrec = fixity op +-- | Pretty print prefix unary operators+prefixop :: (Pretty a, Pretty op, CFixity op)+ => Int -- ^ precedence of context+ -> op -- ^ operator+ -> a -- ^ argument+ -> Doc+prefixop prec op arg =+ parensIf (prec > opPrec) $+ ppr op <> pprPrec rightPrec arg+ where+ rightPrec | opAssoc == LeftAssoc = opPrec + 1+ | otherwise = opPrec++ Fixity opAssoc opPrec = fixity op+ parensList :: [Doc] -> Doc-parensList = encloseSep lparen rparen comma+parensList = enclosesep lparen rparen comma bracesList :: [Doc] -> Doc-bracesList = encloseSep lbrace rbrace comma+bracesList = enclosesep lbrace rbrace comma bracesSemiList :: [Doc] -> Doc-bracesSemiList = encloseSep lbrace rbrace semi+bracesSemiList = enclosesep lbrace rbrace semi angleList :: [Doc] -> Doc-angleList = encloseSep langle rangle comma+angleList = enclosesep langle rangle comma +embrace :: [Doc] -> Doc+embrace [] = lbrace <+> rbrace+embrace ds = lbrace <>+ nest 4 (line <> stack ds) </>+ rbrace+ pprAnti :: String -> String -> Doc pprAnti anti s = char '$' <> text anti <> colon <> if isIdentifier s then text s else parens (text s)@@ -83,8 +113,39 @@ class CFixity a where fixity :: a -> Fixity + parensOp :: Int -> a -> Doc -> Doc+ parensOp prec op =+ parensIf (prec > opPrec)+ where+ Fixity _ opPrec = fixity op++-- -- Fixities are taken from Table 2-1 in Section 2.12 of K&R (2nd ed.)+--+commaPrec :: Int+commaPrec = 1 +commaPrec1 :: Int+commaPrec1 = commaPrec + 1++condPrec :: Int+condPrec = 3++condPrec1 :: Int+condPrec1 = condPrec + 1++unopPrec :: Int+unopPrec = 14++unopPrec1 :: Int+unopPrec1 = unopPrec + 1++memberPrec :: Int+memberPrec = 15++memberPrec1 :: Int+memberPrec1 = memberPrec + 1+ instance CFixity BinOp where fixity Add = infixl_ 12 fixity Sub = infixl_ 12@@ -105,11 +166,40 @@ fixity Lsh = infixl_ 11 fixity Rsh = infixl_ 11 + parensOp prec op =+ go op+ where+ go :: BinOp -> Doc -> Doc+ go Add | isBitwiseOp = parens+ go Sub | isBitwiseOp = parens+ go Land | isOp Lor = parens+ go Lor | isOp Land = parens+ go And | isOp Or = parens+ | isOp Xor = parens+ go Or | isOp And = parens+ | isOp Xor = parens+ go Xor | isOp And = parens+ | isOp Or = parens+ go _ = parensIf (prec > opPrec)++ isBitwiseOp :: Bool+ isBitwiseOp = isOp And || isOp Or || isOp Xor++ -- Return 'True' if we are potentially an immediate subterm of the+ -- binary operator op'. We make this determination based of the value of+ -- @prec@.+ isOp :: BinOp -> Bool+ isOp op' = prec == op'Prec || prec == op'Prec + 1+ where+ Fixity _ op'Prec = fixity op'++ Fixity _ opPrec = fixity op+ instance CFixity AssignOp where fixity _ = infixr_ 2 instance CFixity UnOp where- fixity _ = infixr_ 14+ fixity _ = infixr_ unopPrec instance Pretty Id where ppr (Id ident _) = text ident@@ -131,57 +221,59 @@ ppr (TObjC__unsafe_unretained _) = text "__unsafe_unretained" instance Pretty TypeQual where- ppr (Tconst _) = text "const"- ppr (Tvolatile _) = text "volatile"- ppr (Tinline _) = text "inline"+ ppr (Tconst _) = text "const"+ ppr (Tvolatile _) = text "volatile" - ppr (Trestrict _) = text "__restrict"+ ppr (EscTypeQual esc _) = text esc - ppr (TAttr attr) = ppr [attr]+ ppr (AntiTypeQual v _) = pprAnti "tyqual" v+ ppr (AntiTypeQuals v _) = pprAnti "tyquals" v - ppr (TCUDAdevice _) = text "__device__"- ppr (TCUDAglobal _) = text "__global__"- ppr (TCUDAhost _) = text "__host__"- ppr (TCUDAconstant _) = text "__constant__"- ppr (TCUDAshared _) = text "__shared__"- ppr (TCUDArestrict _) = text "__restrict__"- ppr (TCUDAnoinline _) = text "__noinline__"+ ppr (Tinline _) = text "inline"+ ppr (Trestrict _) = text "restrict" - ppr (TCLprivate _) = text "__private"- ppr (TCLlocal _) = text "__local"- ppr (TCLglobal _) = text "__global"- ppr (TCLconstant _) = text "__constant"- ppr (TCLreadonly _) = text "read_only"- ppr (TCLwriteonly _) = text "write_only"- ppr (TCLkernel _) = text "__kernel"+ ppr (TAttr attr) = ppr [attr]+ ppr (T__restrict _) = text "__restrict" + ppr (TCUDAdevice _) = text "__device__"+ ppr (TCUDAglobal _) = text "__global__"+ ppr (TCUDAhost _) = text "__host__"+ ppr (TCUDAconstant _) = text "__constant__"+ ppr (TCUDAshared _) = text "__shared__"+ ppr (TCUDArestrict _) = text "__restrict__"+ ppr (TCUDAnoinline _) = text "__noinline__"++ ppr (TCLprivate _) = text "__private"+ ppr (TCLlocal _) = text "__local"+ ppr (TCLglobal _) = text "__global"+ ppr (TCLconstant _) = text "__constant"+ ppr (TCLreadonly _) = text "read_only"+ ppr (TCLwriteonly _) = text "write_only"+ ppr (TCLkernel _) = text "__kernel"+ instance Pretty Sign where ppr (Tsigned _) = text "signed" ppr (Tunsigned _) = text "unsigned" -pprSign :: Maybe Sign -> Doc-pprSign Nothing = empty-pprSign (Just sign) = ppr sign <> space- instance Pretty TypeSpec where ppr (Tvoid _) = text "void"- ppr (Tchar sign _) = pprSign sign <> text "char"- ppr (Tshort sign _) = pprSign sign <> text "short"- ppr (Tint sign _) = pprSign sign <> text "int"- ppr (Tlong sign _) = pprSign sign <> text "long"- ppr (Tlong_long sign _) = pprSign sign <> text "long long"+ ppr (Tchar sign _) = ppr sign <+> text "char"+ ppr (Tshort sign _) = ppr sign <+> text "short"+ ppr (Tint sign _) = ppr sign <+> text "int"+ ppr (Tlong sign _) = ppr sign <+> text "long"+ ppr (Tlong_long sign _) = ppr sign <+> text "long long" ppr (Tfloat _) = text "float" ppr (Tdouble _) = text "double" ppr (Tlong_double _) = text "long double" ppr (Tstruct maybe_ident maybe_fields attrs _) =- pprStructOrUnion "struct" maybe_ident maybe_fields attrs+ align $ pprStructOrUnion "struct" maybe_ident maybe_fields attrs ppr (Tunion maybe_ident maybe_fields attrs _) =- pprStructOrUnion "union" maybe_ident maybe_fields attrs+ align $ pprStructOrUnion "union" maybe_ident maybe_fields attrs ppr (Tenum maybe_ident cenums attrs _) =- pprEnum maybe_ident cenums attrs+ align $ pprEnum maybe_ident cenums attrs ppr (Tnamed ident refs _) = ppr ident <> if null refs then empty else angles (commasep (map ppr refs))@@ -189,12 +281,24 @@ ppr (T_Bool _) = text "_Bool" - ppr (T_Complex _) =- text "_Complex"+ ppr (Tfloat_Complex _) =+ text "float" <+> text "_Complex" - ppr (T_Imaginary _) =- text "_Imaginary"+ ppr (Tdouble_Complex _) =+ text "double" <+> text "_Complex" + ppr (Tlong_double_Complex _) =+ text "long" <+> text "double" <+> text "_Complex"++ ppr (Tfloat_Imaginary _) =+ text "float" <+> text "_Imaginary"++ ppr (Tdouble_Imaginary _) =+ text "double" <+> text "_Imaginary"++ ppr (Tlong_double_Imaginary _) =+ text "long" <+> text "double" <+> text "_Imaginary"+ ppr (TtypeofExp e _) = text "__typeof__" <> parens (pprPrec 14 e) @@ -210,41 +314,19 @@ -> [Attr] -> Doc pprStructOrUnion ty maybe_ident maybe_fields attrs =- text ty- <> case maybe_ident of- Nothing -> empty- Just ident -> space <> ppr ident- <> case maybe_fields of- Nothing -> empty- Just fields -> space <> lbrace- <> nest 4 (line <> stack (zipWith (<>) (map ppr fields) (repeat semi)))- </> rbrace- <> case attrs of- [] -> empty- _ -> softline <> ppr attrs+ text ty <+> ppr maybe_ident <+> ppr maybe_fields <+/> ppr attrs pprEnum :: Maybe Id -> [CEnum] -> [Attr] -> Doc pprEnum maybe_ident cenums attrs =- text "enum"- <> case maybe_ident of- Nothing -> empty- Just ident -> space <> ppr ident- <> case cenums of- [] -> empty- _ -> space <> lbrace <>- nest 4 (line <> stack (punctuate comma (map ppr cenums))) </>- rbrace- <> case attrs of- [] -> empty- _ -> softline <> ppr attrs+ text "enum" <+> ppr maybe_ident <+> ppr cenums <+/> ppr attrs instance Pretty DeclSpec where ppr (DeclSpec storage quals spec _) = case map ppr storage ++ map ppr quals of- [] -> ppr spec+ [] -> ppr spec docs -> spread docs <+/> ppr spec ppr (AntiDeclSpec v _) =@@ -264,31 +346,24 @@ pprDeclarator maybe_ident declarator = case maybe_ident of Nothing -> pprDecl declarator empty- Just ident -> pprDecl declarator (space <> ppr ident)+ Just ident -> pprDecl declarator (ppr ident) where pprPtr :: Decl -> Doc -> (Decl, Doc)- pprPtr (Ptr [] decl _) post =- pprPtr decl $- text "*" <> post pprPtr (Ptr quals decl _) post = pprPtr decl $- text "*" <+> spread (map ppr quals) <> post- pprPtr (BlockPtr [] decl _) post =- pprPtr decl $- text "^" <> post+ text "*" <> spread (map ppr quals) <+> post+ pprPtr (BlockPtr quals decl _) post = pprPtr decl $- text "^" <+> spread (map ppr quals) <> post- pprPtr decl post = (decl, post)+ text "^" <> spread (map ppr quals) <+> post - pprDirDecl :: Decl -> Doc -> (Decl, Doc)- pprDirDecl (Array [] size decl _) pre =- pprDirDecl decl $- pre <> brackets (align (ppr size))+ pprPtr decl post =+ (decl, post) + pprDirDecl :: Decl -> Doc -> (Decl, Doc) pprDirDecl (Array quals size decl _) pre = pprDirDecl decl $- pre <> brackets (align (spread (map ppr quals) <> ppr size))+ pre <> brackets (align (spread (map ppr quals) <+> ppr size)) pprDirDecl (Proto decl args _) pre = pprDirDecl decl $@@ -298,18 +373,20 @@ pprDirDecl decl $ pre <> parensList (map ppr args) - pprDirDecl decl pre = (decl, pre)+ pprDirDecl decl pre =+ (decl, pre) pprDecl :: Decl -> Doc -> Doc pprDecl decl mid = case decl' of- DeclRoot _ -> declDoc- _ -> pprDecl decl' (parens declDoc)+ DeclRoot {} -> declDoc+ AntiTypeDecl {} -> declDoc+ _ -> pprDecl decl' (parens declDoc) where (decl', declDoc) = uncurry pprPtr (pprDirDecl decl mid) instance Pretty Type where- ppr (Type spec decl _) = ppr spec <> pprDeclarator Nothing decl+ ppr (Type spec decl _) = ppr spec <+> pprDeclarator Nothing decl ppr (AntiType v _) = pprAnti "ty" v instance Pretty Designator where@@ -334,16 +411,13 @@ instance Pretty Init where ppr (Init ident decl maybe_asmlabel maybe_e attrs _) =- pprDeclarator (Just ident) decl- <> case attrs of- [] -> empty- _ -> softline <> ppr attrs- <> case maybe_asmlabel of- Nothing -> empty- Just l -> space <> text "asm" <+> parens (ppr l)- <> case maybe_e of- Nothing -> empty- Just e -> space <> text "=" <+/> ppr e+ pprDeclarator (Just ident) decl <+/> ppr attrs+ <+> case maybe_asmlabel of+ Nothing -> empty+ Just l -> text "asm" <+> parens (ppr l)+ <+> case maybe_e of+ Nothing -> empty+ Just e -> text "=" <+/> ppr e instance Pretty Typedef where ppr (Typedef ident decl attrs loc) =@@ -351,65 +425,64 @@ instance Pretty InitGroup where ppr (InitGroup spec attrs inits _) =- ppr spec- <> case attrs of- [] -> empty- _ -> softline <> ppr attrs- <> case inits of- [] -> empty- _ -> commasep (map ppr inits)+ ppr spec <+/> ppr attrs <+> commasep (map ppr inits) ppr (TypedefGroup spec attrs typedefs _) =- text "typedef" <+> ppr spec- <> case attrs of- [] -> empty- _ -> softline <> ppr attrs- <> case typedefs of- [] -> empty- _ -> commasep (map ppr typedefs)+ text "typedef" <+> ppr spec <+/> ppr attrs <+> commasep (map ppr typedefs) ppr (AntiDecls v _) = pprAnti "decls" v ppr (AntiDecl v _) = pprAnti "decl" v + pprList initgroups =+ stack (zipWith (<>) (map ppr initgroups) (repeat semi))+ instance Pretty Field where ppr (Field maybe_ident maybe_decl maybe_e _) = case maybe_decl of Nothing -> empty Just decl -> pprDeclarator maybe_ident decl- <>+ <+> case maybe_e of Nothing -> empty- Just e -> space <> colon <+> ppr e+ Just e -> colon <+> ppr e instance Pretty FieldGroup where ppr (FieldGroup spec fields _) =- ppr spec <> commasep (map ppr fields)+ ppr spec <+> commasep (map ppr fields) ppr (AntiSdecls v _) = pprAnti "sdecls" v ppr (AntiSdecl v _) = pprAnti "sdecl" v + pprList fields = embrace (zipWith (<>) (map ppr fields) (repeat semi))+ instance Pretty CEnum where ppr (CEnum ident maybe_e _) =- ppr ident- <> case maybe_e of- Nothing -> empty- Just e -> space <> text "=" <+/> ppr e+ ppr ident <+>+ case maybe_e of+ Nothing -> empty+ Just e -> text "=" <+/> ppr e ppr (AntiEnums v _) = pprAnti "enums" v ppr (AntiEnum v _) = pprAnti "enum" v + pprList [] = empty+ pprList cenums = embrace (zipWith (<>) (map ppr cenums) (repeat comma))+ instance Pretty Attr where ppr (Attr ident [] _) = ppr ident ppr (Attr ident args _) = ppr ident <> parens (commasep (map ppr args)) + ppr (AntiAttr v _) = pprAnti "attr" v+ ppr (AntiAttrs v _) = pprAnti "attrs" v+ pprList [] = empty pprList attrs = text "__attribute__" <> parens (parens (commasep (map ppr attrs))) instance Pretty Param where ppr (Param maybe_ident spec decl _) =- ppr spec <> pprDeclarator maybe_ident decl+ ppr spec <+> pprDeclarator maybe_ident decl ppr (AntiParams v _) = pprAnti "params" v ppr (AntiParam v _) = pprAnti "param" v@@ -423,16 +496,12 @@ instance Pretty Func where ppr (Func spec ident decl args body loc) =- ppr spec <> pprDeclarator (Just ident) (Proto decl args loc)- </> ppr body+ ppr spec <+> pprDeclarator (Just ident) (Proto decl args loc) </> ppr body ppr (OldFunc spec ident decl args maybe_initgroups body loc) =- ppr spec <> pprDeclarator (Just ident) (OldProto decl args loc)- </> case maybe_initgroups of- Nothing -> empty- Just initgroups ->- stack (zipWith (<>) (map ppr initgroups) (repeat semi))- </> ppr body+ ppr spec <+> pprDeclarator (Just ident) (OldProto decl args loc) </>+ ppr maybe_initgroups </>+ ppr body instance Pretty Definition where ppr (FuncDef func loc) = srcloc loc <> ppr func@@ -446,55 +515,52 @@ ppr (AntiEdecl v _) = pprAnti "edecl" v ppr (ObjCClassIface cident sident refs ivars decls attrs loc) =- srcloc loc- <> case attrs of- [] -> empty- _ -> ppr attrs <> softline- <> text "@interface" <+> ppr cident <+> maybe empty (\ident -> char ':' <+> ppr ident) sident- <+> pprIfaceBody refs ivars decls+ srcloc loc <+> ppr attrs <+/>+ text "@interface" <+> ppr cident <+> maybe empty (\ident -> char ':' <+> ppr ident) sident <+>+ pprIfaceBody refs ivars decls ppr (ObjCCatIface cident catident refs ivars decls loc) =- srcloc loc- <> text "@interface" <+> ppr cident <+> parens (maybe empty ppr catident) <+> pprIfaceBody refs ivars decls+ srcloc loc <>+ text "@interface" <+> ppr cident <+> parens (maybe empty ppr catident) <+> pprIfaceBody refs ivars decls ppr (ObjCProtDec prots loc) = srcloc loc <> text "@protocol" <+> commasep (map ppr prots) <> semi ppr (ObjCProtDef pident refs decls loc) =- srcloc loc- <> text "@protocol" <+> ppr pident <+> pprIfaceBody refs [] decls+ srcloc loc <>+ text "@protocol" <+> ppr pident <+> pprIfaceBody refs [] decls ppr (ObjCClassImpl cident sident ivars defs loc) =- srcloc loc- <> text "@implementation" <+> ppr cident <+> maybe empty (\ident -> char ':' <+> ppr ident) sident- </> stack (map ppr ivars)- <//> stack (map ppr defs)- </> text "@end"+ srcloc loc <>+ text "@implementation" <+> ppr cident <+> maybe empty (\ident -> char ':' <+> ppr ident) sident </>+ stack (map ppr ivars) <//>+ stack (map ppr defs) </>+ text "@end" ppr (ObjCCatImpl cident catident defs loc) =- srcloc loc- <> text "@implementation" <+> ppr cident <+> parens (ppr catident)- <//> stack (map ppr defs)- </> text "@end"+ srcloc loc <>+ text "@implementation" <+> ppr cident <+> parens (ppr catident) <//>+ stack (map ppr defs) </>+ text "@end" ppr (ObjCSynDef pivars loc) =- srcloc loc- <> text "@synthesize" <+> commasep (map pprPivar pivars) <> semi+ srcloc loc <>+ text "@synthesize" <+> commasep (map pprPivar pivars) <> semi where pprPivar (ident, Nothing) = ppr ident pprPivar (ident1, Just ident2) = ppr ident1 <> char '=' <> ppr ident2 ppr (ObjCDynDef pivars loc) =- srcloc loc- <> text "@dynamic" <+> commasep (map ppr pivars) <> semi+ srcloc loc <>+ text "@dynamic" <+> commasep (map ppr pivars) <> semi ppr (ObjCMethDef proto body loc) =- srcloc loc- <> ppr proto </> ppr body+ srcloc loc <>+ ppr proto </> ppr body ppr (ObjCCompAlias aident cident loc) =- srcloc loc- <> text "@compatibility_alias" <+> ppr aident <+> ppr cident+ srcloc loc <>+ text "@compatibility_alias" <+> ppr aident <+> ppr cident ppr (AntiObjCMeth v _) = pprAnti "methdef" v ppr (AntiObjCMeths v _) = pprAnti "methdefs" v@@ -517,9 +583,12 @@ ppr (Case e stm sloc) = srcloc sloc <>- line <> indent (-2) (line <> text "case" <+> ppr e <> colon) </> ppr stm + ppr (CaseRange e1 e2 stm sloc) =+ srcloc sloc <>+ indent (-2) (line <> text "case" <+> ppr e1 <+> text "..." <+> ppr e2 <> colon) </> ppr stm+ ppr (Default stm sloc) = srcloc sloc <> indent (-2) (line <> text "default" <> colon) </> ppr stm@@ -535,36 +604,47 @@ ppr (If test then' maybe_else sloc) = srcloc sloc <>- text "if" <+> parens (ppr test)- <> pprStm then'- <> case maybe_else of- Nothing -> empty- Just else' -> space <> text "else" <> pprStm else'+ text "if" <+> parens (ppr test) <>+ pprThen then' (fmap pprElse maybe_else) where- pprStm :: Stm -> Doc- pprStm stm@(Block _ _) = space <> ppr stm- pprStm stm@(If _ _ _ _) = space <> ppr stm- pprStm stm = nest 4 (line <> ppr stm) <> line+ isIf :: Stm -> Bool+ isIf If{} = True+ isIf (Comment _ stm _) = isIf stm+ isIf _ = False + pprThen :: Stm -> Maybe Doc -> Doc+ pprThen stm@(Block {}) rest = space <> ppr stm <+> maybe empty id rest+ pprThen stm rest+ | isIf stm = space <> ppr [BlockStm stm] <+> maybe empty id rest+ pprThen stm Nothing = nest 4 (line <> ppr stm)+ pprThen stm (Just rest) = nest 4 (line <> ppr stm) </> rest++ pprElse :: Stm -> Doc+ pprElse stm =+ text "else" <> go stm+ where+ go :: Stm -> Doc+ go (Block {}) = space <> ppr stm+ go (If {}) = space <> ppr stm+ go _stm = nest 4 (line <> ppr stm)+ ppr (Switch e stm sloc) = srcloc sloc <>- text "switch" <+> parens (ppr e ) <+/> ppr stm+ text "switch" <+> parens (ppr e) <> pprBlock stm ppr (While e stm sloc) = srcloc sloc <>- text "while" <+> parens (ppr e) <+/> ppr stm+ text "while" <+> parens (ppr e) <> pprBlock stm ppr (DoWhile stm e sloc) = srcloc sloc <>- text "do" <+/> ppr stm <+/> text "while" <> parens(ppr e) <> semi+ text "do" <> pprBlock stm <+/> text "while" <> parens (ppr e) <> semi ppr (For ini test post stm sloc) = srcloc sloc <>- text "for"- <+> (parens . semisep) [either ppr ppr ini, ppr test, ppr post]- <> case stm of- Block {} -> space <> ppr stm- _ -> nest 4 $ line <> ppr stm+ text "for" <+>+ (parens . semisep) [either ppr ppr ini, ppr test, ppr post] <>+ pprBlock stm ppr (Goto ident sloc) = srcloc sloc <>@@ -586,8 +666,12 @@ srcloc sloc <> text "#pragma" <+> text pragma ppr (Comment com stm sloc) =- srcloc sloc <> text com </> ppr stm+ align $ srcloc sloc <> text com </> ppr stm + ppr (EscStm esc sloc) =+ srcloc sloc <> text esc++ ppr (AntiEscStm v _) = pprAnti "escstm" v ppr (AntiPragma v _) = pprAnti "pragma" v ppr (AntiComment v stm _) = pprAnti "pragma" v </> ppr stm ppr (AntiStm v _) = pprAnti "stm" v@@ -658,6 +742,11 @@ <> text "@autoreleasepool" </> ppr block +pprBlock :: Stm -> Doc+pprBlock stm@(Block {}) = space <> ppr stm+pprBlock stm@(If {}) = space <> ppr [BlockStm stm]+pprBlock stm = nest 4 $ line <> ppr stm+ instance Pretty BlockItem where ppr (BlockDecl decl) = ppr decl <> semi ppr (BlockStm stm) = ppr stm@@ -679,39 +768,44 @@ loop (item : items) = ppr item : loop items - embrace :: [Doc] -> Doc- embrace [] = lbrace <+> rbrace- embrace ds = lbrace <>- nest 4 (line <> stack ds) </>- rbrace- instance Pretty Const where- ppr (IntConst s _ _ _) = text s- ppr (LongIntConst s _ _ _) = text s- ppr (LongLongIntConst s _ _ _) = text s- ppr (FloatConst s _ _) = text s- ppr (DoubleConst s _ _) = text s- ppr (LongDoubleConst s _ _) = text s- ppr (CharConst s _ _) = text s- ppr (StringConst ss _ _) = sep (map string ss)+ pprPrec p (IntConst s _ i _) = parensIf (i < 0 && p > unopPrec) $+ text s+ pprPrec p (LongIntConst s _ i _) = parensIf (i < 0 && p > unopPrec) $+ text s+ pprPrec p (LongLongIntConst s _ i _) = parensIf (i < 0 && p > unopPrec) $+ text s+ pprPrec p (FloatConst s r _) = parensIf (r < 0 && p > unopPrec) $+ text s+ pprPrec p (DoubleConst s r _) = parensIf (r < 0 && p > unopPrec) $+ text s+ pprPrec p (LongDoubleConst s r _) = parensIf (r < 0 && p > unopPrec) $+ text s+ pprPrec _ (CharConst s _ _) = text s+ pprPrec _ (StringConst ss _ _) = sep (map string ss) - ppr (AntiConst v _) = pprAnti "const" v- ppr (AntiString v _) = pprAnti "string" v- ppr (AntiChar v _) = pprAnti "char" v- ppr (AntiLongDouble v _) = pprAnti "ldouble" v- ppr (AntiDouble v _) = pprAnti "double" v- ppr (AntiFloat v _) = pprAnti "float" v- ppr (AntiULInt v _) = pprAnti "ulint" v- ppr (AntiLInt v _) = pprAnti "lint" v- ppr (AntiULLInt v _) = pprAnti "ullint" v- ppr (AntiLLInt v _) = pprAnti "llint" v- ppr (AntiUInt v _) = pprAnti "uint" v- ppr (AntiInt v _) = pprAnti "int" v+ pprPrec _ (AntiConst v _) = pprAnti "const" v+ pprPrec _ (AntiString v _) = pprAnti "string" v+ pprPrec _ (AntiChar v _) = pprAnti "char" v+ pprPrec _ (AntiLongDouble v _) = pprAnti "ldouble" v+ pprPrec _ (AntiDouble v _) = pprAnti "double" v+ pprPrec _ (AntiFloat v _) = pprAnti "float" v+ pprPrec _ (AntiULInt v _) = pprAnti "ulint" v+ pprPrec _ (AntiLInt v _) = pprAnti "lint" v+ pprPrec _ (AntiULLInt v _) = pprAnti "ullint" v+ pprPrec _ (AntiLLInt v _) = pprAnti "llint" v+ pprPrec _ (AntiUInt v _) = pprAnti "uint" v+ pprPrec _ (AntiInt v _) = pprAnti "int" v instance Pretty Exp where- pprPrec _ (Var ident loc) = pprLoc loc $ ppr ident- pprPrec _ (Const k loc) = pprLoc loc $ ppr k+ pprPrec p (Var ident loc) =+ pprLoc loc $+ pprPrec p ident + pprPrec p (Const k loc) =+ pprLoc loc $+ pprPrec p k+ pprPrec p (BinOp op e1 e2 loc) = pprLoc loc $ infixop p op e1 e2@@ -722,78 +816,99 @@ pprPrec p (PreInc e loc) = pprLoc loc $- parensIf (p > 14) $- text "++" <> pprPrec 14 e+ parensIf (p > unopPrec) $+ text "++" <> pprPrec unopPrec1 e pprPrec p (PostInc e loc) = pprLoc loc $- parensIf (p > 15) $- pprPrec 15 e <> text "++"+ parensIf (p > unopPrec) $+ pprPrec unopPrec1 e <> text "++" pprPrec p (PreDec e loc) = pprLoc loc $- parensIf (p > 14) $- text "--" <> pprPrec 14 e+ parensIf (p > unopPrec) $+ text "--" <> pprPrec unopPrec1 e pprPrec p (PostDec e loc) = pprLoc loc $- parensIf (p > 15) $- pprPrec 15 e <> text "--"+ parensIf (p > unopPrec) $+ pprPrec unopPrec1 e <> text "--" + pprPrec _ (EscExp e loc) =+ srcloc loc <> text e++ pprPrec p (AntiEscExp e loc) =+ pprLoc loc $+ parensIf (p > unopPrec) $+ text e++ -- When printing leading + and - operators, we print the argument at+ -- precedence 'unopPrec1' to ensure we get parentheses in cases like+ -- @-(-42)@. The same holds for @++@ and @--@ above.+ pprPrec p (UnOp op@Positive e loc) =+ pprLoc loc $+ parensIf (p > unopPrec) $+ ppr op <> pprPrec unopPrec1 e++ pprPrec p (UnOp op@Negate e loc) =+ pprLoc loc $+ parensIf (p > unopPrec) $+ ppr op <> pprPrec unopPrec1 e+ pprPrec p (UnOp op e loc) = pprLoc loc $- parensIf (p > 14) $- ppr op <> pprPrec 14 e+ prefixop p op e pprPrec p (SizeofExp e loc) = pprLoc loc $- parensIf (p > 14) $- text "sizeof" <> parens (pprPrec 14 e)+ parensIf (p > unopPrec) $+ text "sizeof" <> parens (ppr e) pprPrec p (SizeofType tipe loc) = pprLoc loc $- parensIf (p > 14) $+ parensIf (p > unopPrec) $ text "sizeof" <> parens (ppr tipe) pprPrec p (Cast tipe e loc) = pprLoc loc $- parensIf (p > 14) $- parens (ppr tipe) <+> pprPrec 14 e+ parensIf (p > unopPrec) $+ parens (ppr tipe) <+> pprPrec unopPrec e pprPrec p (Cond test then' else' loc) = pprLoc loc $- parensIf (p > 3) $- pprPrec 3 test <+> text "?" <+>- pprPrec 3 then' <+> colon <+> pprPrec 3 else'+ parensIf (p > condPrec) $+ pprPrec condPrec1 test <+> text "?" <+>+ pprPrec condPrec1 then' <+> colon <+>+ pprPrec condPrec else' pprPrec p (Member e ident loc) = pprLoc loc $- parensIf (p > 15) $- pprPrec 15 e <> dot <> ppr ident+ parensIf (p > memberPrec) $+ pprPrec memberPrec e <> dot <> ppr ident pprPrec p (PtrMember e ident loc) = pprLoc loc $- parensIf (p > 15) $- pprPrec 15 e <> text "->" <> ppr ident+ parensIf (p > memberPrec) $+ pprPrec memberPrec e <> text "->" <> ppr ident pprPrec p (Index e1 e2 loc) = pprLoc loc $- parensIf (p > 15) $- pprPrec 15 e1 <> brackets (ppr e2)+ parensIf (p > memberPrec) $+ pprPrec memberPrec e1 <> brackets (ppr e2) pprPrec p (FnCall f args loc) = pprLoc loc $- parensIf (p > 15) $- pprPrec 15 f <> parensList (map ppr args)+ parensIf (p > memberPrec) $+ pprPrec memberPrec f <> parensList (map ppr args) pprPrec p (Seq e1 e2 loc) = pprLoc loc $- parensIf (p > 1) $- pprPrec 1 e1 <> comma <+/> pprPrec 1 e2+ parensIf (p > commaPrec) $+ pprPrec commaPrec e1 <> comma <+/> pprPrec commaPrec1 e2 pprPrec p (CompoundLit ty inits loc) = pprLoc loc $- parensIf (p > 15) $+ parensIf (p > memberPrec) $ parens (ppr ty) <+> braces (commasep (map pprInit inits)) where@@ -817,8 +932,8 @@ pprPrec p (CudaCall f config args loc) = pprLoc loc $- parensIf (p > 15) $- pprPrec 15 f <>+ parensIf (p > memberPrec) $+ pprPrec memberPrec f <> text "<<<" <> pprConfig config <> text ">>>" <> parensList (map ppr args) where@@ -896,10 +1011,29 @@ srcloc loc <> text "@selector" <> parens (text sel) + pprPrec _ (Lambda captureList decl blockItems loc) =+ srcloc loc <>+ ppr captureList <>+ ppr decl <>+ ppr blockItems+ pprPrec _ (AntiArgs v _) = pprAnti "args" v pprPrec _ (AntiExp v _) = pprAnti "var" v +instance Pretty LambdaDeclarator where+ pprPrec _ (LambdaDeclarator params isMutable returnType _) =+ parens (ppr params) <>+ (if isMutable then text "mutable" else empty) <>+ (if isJust returnType then text "->" <> ppr returnType else empty)++instance Pretty LambdaIntroducer where+ pprPrec _ (LambdaIntroducer items loc) = pprLoc loc $ brackets $ commasep (map ppr items)++instance Pretty CaptureListEntry where+ pprPrec _ DefaultByValue = char '='+ pprPrec _ DefaultByReference = char '&'+ instance Pretty ObjCDictElem where pprPrec _ (ObjCDictElem l r _) = ppr l <+> colon <+> ppr r pprPrec _ (AntiObjCDictElems v _) = pprAnti "dictelems" v@@ -992,8 +1126,7 @@ ppr (ObjCIfaceReq req loc) = pprLoc loc $ ppr req ppr (ObjCIfaceMeth proto _loc) =- ppr proto- <> semi+ ppr proto <> semi ppr (ObjCIfaceDecl decl loc) = pprLoc loc $ ppr decl ppr (AntiObjCIfaceDecl v _loc) =@@ -1038,26 +1171,26 @@ instance Pretty ObjCMethodProto where ppr (ObjCMethodProto isClassMeth resTy attrs1 params vargs attrs2 loc) = pprLoc loc $- (if isClassMeth then char '+' else char '-')- <+> maybe empty (parens . ppr) resTy- <> case attrs1 of- [] -> empty- _ -> space <> ppr attrs1 <> space- <> spread (map ppr params)- <> if vargs then text ", ..." else empty- <> ppr attrs2+ (if isClassMeth then char '+' else char '-') <+>+ maybe empty (parens . ppr) resTy <+>+ ppr attrs1 <+>+ spread (map ppr params) <>+ (if vargs then text ", ..." else empty) <+>+ ppr attrs2 ppr (AntiObjCMethodProto p _) = pprAnti "methproto" p instance Pretty ObjCCatch where- ppr (ObjCCatch Nothing block loc) = srcloc loc <> text "@catch (...)" <+> ppr block- ppr (ObjCCatch (Just param) block loc) = srcloc loc- <> text "@catch" <+> parens (ppr param) <+> ppr block+ ppr (ObjCCatch Nothing block loc) =+ srcloc loc <>+ text "@catch (...)" <+> ppr block + ppr (ObjCCatch (Just param) block loc) =+ srcloc loc <>+ text "@catch" <+> parens (ppr param) <+> ppr block+ pprList = stack . map ppr instance Pretty ObjCRecv where- ppr (ObjCRecvSuper loc) = pprLoc loc $ text "super"- ppr (ObjCRecvExp e loc) = pprLoc loc $ ppr e- ppr (ObjCRecvClassName className loc) = pprLoc loc $ ppr className- ppr (ObjCRecvTypeName typeName loc) = pprLoc loc $ ppr typeName- ppr (AntiObjCRecv v _) = pprAnti "recv" v+ ppr (ObjCRecvSuper loc) = pprLoc loc $ text "super"+ ppr (ObjCRecvExp e loc) = pprLoc loc $ ppr e+ ppr (AntiObjCRecv v _) = pprAnti "recv" v
Language/C/Quote.hs view
@@ -1,10 +1,10 @@ -- | -- Module : Language.C.Quote--- Copyright : (c) Harvard University 2010-2011--- (c) Geoffrey Mainland 2011-2013--- : (c) Drexel University 2013+-- Copyright : (c) 2010-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- : (c) 2013-2015 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu -- -- There are five modules that provide quasiquoters, each for a different C -- variant. 'Language.C.Quote.C' parses C99, 'Language.C.Quote.GCC' parses C99@@ -18,7 +18,6 @@ -- imports to any module using the quasiquoters provided by this package: -- -- > import qualified Data.Loc--- > import qualified Data.Symbol -- > import qualified Language.C.Syntax -- -- These modules may also be imported unqualified, of course. The quasiquoters@@ -56,6 +55,8 @@ -- -- [@csdecl@] Declaration of a struct member, of type @'FieldGroup'@. --+-- [@ctyquals@] A list of type qualifiers, of type @['TyQual']@.+-- -- [@cty@] A C type, of type @'Type'@. -- -- [@cunit@] A compilation unit, of type @['Definition']@.@@ -164,8 +165,13 @@ -- [@enums@] An list of enum members. The argument must have type @['CEnum']@. -- -- [@esc@] An arbitrary top-level C "definition," such as an @#include@ or a--- @#define@. The argument must have type @'String'@.+-- @#define@. The argument must have type @'String'@. Also: an uninterpreted,+-- expression-level C escape hatch, which is useful for passing through macro+-- calls. The argument must have type @'String'@. --+-- [@escstm@] An uninterpreted, statement-level C escape hatch, which is useful+-- for passing through macro calls. The argument must have type @'String'@.+-- -- [@edecl@] An external definition. The argument must have type @'Definition'@. -- -- [@edecls@] An list of external definitions. The argument must have type@@ -178,7 +184,12 @@ -- -- [@stm@] A statement. The argument must have type @'Stm'@. ----- [@stms@] A list statements. The argument must have type @['Stm']@.+-- [@stms@] A list of statements. The argument must have type @['Stm']@.+--+-- [@tyqual@] A type qualifier. The argument must have type @'TyQual'@.+--+-- [@tyquals@] A list of type qualifiers. The argument must have type+-- @['TyQual']@. -- -- [@ty@] A C type. The argument must have type @'Type'@. --
Language/C/Quote/Base.hs view
@@ -1,10 +1,10 @@ -- | -- Module : Language.C.Quote--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- : (c) Drexel University 2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- : (c) 2013-2017 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu {-# LANGUAGE CPP #-} {-# LANGUAGE FlexibleInstances #-}@@ -15,17 +15,26 @@ ToIdent(..), ToConst(..), ToExp(..),+ qqExp,+ qqPat, quasiquote ) where import Control.Monad ((>=>)) import qualified Data.ByteString.Char8 as B+import Data.Char (isAscii, isPrint, ord) import Data.Data (Data(..)) import Data.Generics (extQ)+import Data.Int import Data.Loc import Data.Typeable (Typeable(..))-import Language.Haskell.Meta (parseExp, parsePat)-import Language.Haskell.TH+import Data.Word+#ifdef FULL_HASKELL_ANTIQUOTES+import Language.Haskell.Meta (parseExp,parsePat)+#else+import Language.Haskell.ParseExp (parseExp,parsePat)+#endif+import Language.Haskell.TH as TH #if MIN_VERSION_template_haskell(2,7,0) import Language.Haskell.TH.Quote (QuasiQuoter(..), dataToQa,@@ -35,10 +44,13 @@ import Language.Haskell.TH.Quote (QuasiQuoter(..)) #endif /* !MIN_VERSION_template_haskell(2,7,0) */ import Language.Haskell.TH.Syntax+import Numeric (showOct, showHex) import qualified Language.C.Parser as P import qualified Language.C.Syntax as C +newtype LongDouble = LongDouble Double+ -- | An instance of 'ToIndent' can be converted to a 'C.Id'. class ToIdent a where toIdent :: a -> SrcLoc -> C.Id@@ -60,22 +72,83 @@ toConst k _ = k instance ToConst Int where- toConst n loc = C.IntConst (show n) C.Signed (fromIntegral n) loc+ toConst = toConst . toInteger +instance ToConst Int8 where+ toConst = toConst . toInteger++instance ToConst Int16 where+ toConst = toConst . toInteger++instance ToConst Int32 where+ toConst = toConst . toInteger++instance ToConst Int64 where+ toConst = toConst . toInteger++instance ToConst Word where+ toConst n loc = C.IntConst (show n) C.Unsigned (toInteger n) loc++instance ToConst Word8 where+ toConst n loc = C.IntConst (show n) C.Unsigned (toInteger n) loc++instance ToConst Word16 where+ toConst n loc = C.IntConst (show n) C.Unsigned (toInteger n) loc++instance ToConst Word32 where+ toConst n loc = C.IntConst (show n) C.Unsigned (toInteger n) loc++instance ToConst Word64 where+ toConst n loc = C.IntConst (show n) C.Unsigned (toInteger n) loc+ instance ToConst Integer where toConst n loc = C.IntConst (show n) C.Signed n loc instance ToConst Rational where- toConst n loc = C.DoubleConst (show n) n loc+ toConst n loc = toConst (fromRational n :: Double) loc instance ToConst Float where- toConst n loc = C.DoubleConst (show n) (toRational n) loc+ toConst n loc = C.FloatConst (realFloatToString n ++ "F") n loc instance ToConst Double where- toConst n loc = C.DoubleConst (show n) (toRational n) loc+ toConst n loc = C.DoubleConst (realFloatToString n) n loc +instance ToConst LongDouble where+ toConst (LongDouble n) loc = C.LongDoubleConst (realFloatToString n ++ "L") n loc++realFloatToString :: (RealFloat a, Show a) => a -> String+realFloatToString n+ | isNaN n = "NAN"+ | isInfinite n = if n < 0 then "-INFINITY" else "INFINITY"+ | otherwise = show n+ instance ToConst Char where- toConst c loc = C.CharConst (show c) c loc+ toConst c loc = C.CharConst ("'" ++ charToString c ++ "'") c loc+ where+ charToString :: Char -> String+ charToString '\0' = "\\0"+ charToString '\a' = "\\a"+ charToString '\b' = "\\b"+ charToString '\f' = "\\f"+ charToString '\n' = "\\n"+ charToString '\r' = "\\r"+ charToString '\t' = "\\t"+ charToString '\v' = "\\v"+ charToString '\\' = "\\\\"+ charToString '\"' = "\\\""+ charToString c+ | isAscii c && isPrint c = [c]+ | isAscii c = "\\x" ++ hexOf Nothing c+ | ord c < 0x10000 = "\\u" ++ hexOf (Just 4) c+ | otherwise = "\\U" ++ hexOf (Just 8) c+ where+ hexOf :: Maybe Int -> Char -> String+ hexOf len c = case len of+ Nothing -> hex+ Just i -> replicate (i - length hex) '0' ++ hex+ where+ hex :: String+ hex = showHex (ord c) "" instance ToConst String where toConst s loc = C.StringConst [show s] s loc@@ -88,25 +161,52 @@ toExp e _ = e instance ToExp Int where- toExp n loc = C.Const (C.IntConst (show n) C.Signed (fromIntegral n) loc) loc+ toExp n loc = C.Const (toConst n loc) loc +instance ToExp Int8 where+ toExp n loc = C.Const (toConst n loc) loc++instance ToExp Int16 where+ toExp n loc = C.Const (toConst n loc) loc++instance ToExp Int32 where+ toExp n loc = C.Const (toConst n loc) loc++instance ToExp Int64 where+ toExp n loc = C.Const (toConst n loc) loc++instance ToExp Word where+ toExp n loc = C.Const (toConst n loc) loc++instance ToExp Word8 where+ toExp n loc = C.Const (toConst n loc) loc++instance ToExp Word16 where+ toExp n loc = C.Const (toConst n loc) loc++instance ToExp Word32 where+ toExp n loc = C.Const (toConst n loc) loc++instance ToExp Word64 where+ toExp n loc = C.Const (toConst n loc) loc+ instance ToExp Integer where- toExp n loc = C.Const (C.IntConst (show n) C.Signed n loc) loc+ toExp n loc = C.Const (toConst n loc) loc instance ToExp Rational where- toExp n loc = C.Const (C.DoubleConst (show n) n loc) loc+ toExp n loc = C.Const (toConst n loc) loc instance ToExp Float where- toExp n loc = C.Const (C.DoubleConst (show n) (toRational n) loc) loc+ toExp n loc = C.Const (toConst n loc) loc instance ToExp Double where- toExp n loc = C.Const (C.DoubleConst (show n) (toRational n) loc) loc+ toExp n loc = C.Const (toConst n loc) loc instance ToExp Char where- toExp c loc = C.Const (C.CharConst (show c) c loc) loc+ toExp n loc = C.Const (toConst n loc) loc instance ToExp String where- toExp s loc = C.Const (C.StringConst [show s] s loc) loc+ toExp n loc = C.Const (toConst n loc) loc antiVarE :: String -> ExpQ antiVarE = either fail return . parseExp@@ -124,21 +224,43 @@ qqDeclSpecE :: C.DeclSpec -> Maybe (Q Exp) qqDeclSpecE (C.AntiDeclSpec v _) = Just $ antiVarE v qqDeclSpecE (C.AntiTypeDeclSpec extraStorage extraTypeQuals v _) =- Just [|let C.Type (C.DeclSpec storage typeQuals typeSpec loc) _ _- = $(antiVarE v)- in- C.DeclSpec (storage ++ $(dataToExpQ qqExp extraStorage))- (typeQuals ++ $(dataToExpQ qqExp extraTypeQuals))- typeSpec- loc+ Just [|+ case $(antiVarE v) of+ C.Type (C.DeclSpec storage typeQuals typeSpec loc) _ _ ->+ C.DeclSpec+ (storage ++ $(dataToExpQ qqExp extraStorage))+ (typeQuals ++ $(dataToExpQ qqExp extraTypeQuals))+ typeSpec+ loc++ x -> error+ $ "Impossible happened, expected C.Type (C.DeclSpec {}) but got "+ ++ show x |] qqDeclSpecE _ = Nothing qqDeclE :: C.Decl -> Maybe (Q Exp) qqDeclE (C.AntiTypeDecl v _) =- Just [|let C.Type _ decl _ = $(antiVarE v) in decl|]+ Just [|+ case $(antiVarE v) of+ C.Type _ decl _ -> decl+ x -> error+ $ "Impossible happened, expected C.Type but got "+ ++ show x+ |] qqDeclE _ = Nothing +qqTypeQualE :: C.TypeQual -> Maybe (Q Exp)+qqTypeQualE (C.AntiTypeQual v _) = Just $ antiVarE v+qqTypeQualE _ = Nothing++qqTypeQualListE :: [C.TypeQual] -> Maybe (Q Exp)+qqTypeQualListE [] = Just [|[]|]+qqTypeQualListE (C.AntiTypeQuals v _ : stms) =+ Just [|$(antiVarE v) ++ $(dataToExpQ qqExp stms)|]+qqTypeQualListE (stm : stms) =+ Just [|$(dataToExpQ qqExp stm) : $(dataToExpQ qqExp stms)|]+ qqTypeE :: C.Type -> Maybe (Q Exp) qqTypeE (C.AntiType v _) = Just $ antiVarE v qqTypeE _ = Nothing@@ -165,6 +287,17 @@ qqInitGroupListE (ini : inis) = Just [|$(dataToExpQ qqExp ini) : $(dataToExpQ qqExp inis)|] +qqAttrE :: C.Attr -> Maybe (Q Exp)+qqAttrE (C.AntiAttr v _) = Just $ antiVarE v+qqAttrE _ = Nothing++qqAttrListE :: [C.Attr] -> Maybe (Q Exp)+qqAttrListE [] = Just [|[]|]+qqAttrListE (C.AntiAttrs v _ : attrs) =+ Just [|$(antiVarE v) ++ $(dataToExpQ qqExp attrs)|]+qqAttrListE (field : fields) =+ Just [|$(dataToExpQ qqExp field) : $(dataToExpQ qqExp fields)|]+ qqFieldGroupE :: C.FieldGroup -> Maybe (Q Exp) qqFieldGroupE (C.AntiSdecl v _) = Just $ antiVarE v qqFieldGroupE _ = Nothing@@ -254,25 +387,17 @@ (fromIntegral $(antiVarE v)) $(qqLocE loc)|] -- go (C.AntiFloat v loc) =- Just [|C.FloatConst ($(floatConst (antiVarE v)) ++ "F")- (fromRational $(antiVarE v))- $(qqLocE loc)|]+ Just [|toConst ($(antiVarE v) :: Float) $(qqLocE loc)|] go (C.AntiDouble v loc) =- Just [|C.DoubleConst ($(floatConst (antiVarE v)))- (fromRational $(antiVarE v))- $(qqLocE loc)|]+ Just [|toConst ($(antiVarE v) :: Double) $(qqLocE loc)|] go (C.AntiLongDouble v loc) =- Just [|C.LongDoubleConst ($(floatConst (antiVarE v)) ++ "L")- (fromRational $(antiVarE v))- $(qqLocE loc)|]+ Just [|toConst (LongDouble $(antiVarE v)) $(qqLocE loc)|] go (C.AntiChar v loc) =- Just [|C.CharConst (show $(antiVarE v)) $(antiVarE v) $(qqLocE loc)|]+ Just [|toConst $(antiVarE v) $(qqLocE loc)|] go (C.AntiString v loc) = Just [|C.StringConst [show $(antiVarE v)] $(antiVarE v) $(qqLocE loc)|]@@ -282,22 +407,21 @@ intConst :: ExpQ -> ExpQ intConst e = [|show $(e)|] - floatConst :: ExpQ -> ExpQ- floatConst e = [|show (fromRational $(e) :: Double)|]- qqExpE :: C.Exp -> Maybe (Q Exp)-qqExpE (C.AntiExp v loc) = Just [|toExp $(antiVarE v) $(qqLocE loc) :: C.Exp|]-qqExpE _ = Nothing+qqExpE (C.AntiExp v loc) = Just [|toExp $(antiVarE v) $(qqLocE loc) :: C.Exp|]+qqExpE (C.AntiEscExp v loc) = Just [|C.EscExp $(antiVarE v) $(qqLocE loc) :: C.Exp|]+qqExpE _ = Nothing qqExpListE :: [C.Exp] -> Maybe (Q Exp) qqExpListE [] = Just [|[]|] qqExpListE (C.AntiArgs v loc : exps) =- Just [|map (uncurry toExp) ($(antiVarE v) `zip` repeat $(qqLocE loc)) +++ Just [|[toExp v $(qqLocE loc) | v <- $(antiVarE v)] ++ $(dataToExpQ qqExp exps)|] qqExpListE (exp : exps) = Just [|$(dataToExpQ qqExp exp) : $(dataToExpQ qqExp exps)|] qqStmE :: C.Stm -> Maybe (Q Exp)+qqStmE (C.AntiEscStm v loc) = Just [|C.EscStm $(antiVarE v) $(qqLocE loc)|] qqStmE (C.AntiPragma v loc) = Just [|C.Pragma $(antiVarE v) $(qqLocE loc)|] qqStmE (C.AntiComment v stm loc) = Just [|C.Comment $(antiVarE v) $(dataToExpQ qqExp stm) $(qqLocE loc)|] qqStmE (C.AntiStm v _) = Just $ antiVarE v@@ -325,23 +449,20 @@ qqBlockItemListE (stm : stms) = Just [|$(dataToExpQ qqExp stm) : $(dataToExpQ qqExp stms)|] -qqObjcIfaceDeclE :: [C.ObjCIfaceDecl] -> Maybe (Q Exp)-qqObjcIfaceDeclE [] = Just [|[]|]-qqObjcIfaceDeclE (C.AntiObjCIfaceDecls v _ : decls) =+qqObjcIfaceDeclE :: C.ObjCIfaceDecl -> Maybe (Q Exp)+qqObjcIfaceDeclE (C.AntiObjCProp p _) = Just $ antiVarE p+qqObjcIfaceDeclE _ = Nothing++qqObjcIfaceDeclListE :: [C.ObjCIfaceDecl] -> Maybe (Q Exp)+qqObjcIfaceDeclListE [] = Just [|[]|]+qqObjcIfaceDeclListE (C.AntiObjCProps p _ : decls) =+ Just [|$(antiVarE p) ++ $(dataToExpQ qqExp decls)|]+qqObjcIfaceDeclListE (C.AntiObjCIfaceDecls v _ : decls) = Just [|$(antiVarE v) ++ $(dataToExpQ qqExp decls)|]-qqObjcIfaceDeclE (C.AntiObjCIfaceDecl v _ : decls) =+qqObjcIfaceDeclListE (C.AntiObjCIfaceDecl v _ : decls) = Just [|$(antiVarE v) : $(dataToExpQ qqExp decls)|]-qqObjcIfaceDeclE (decl : decls) =- Just [|$(dataToExpQ qqExp decl) : $(dataToExpQ qqExp decls)|]--qqObjCPropE :: C.ObjCIfaceDecl -> Maybe (Q Exp)-qqObjCPropE (C.AntiObjCProp p _) = Just $ antiVarE p-qqObjCPropE _ = Nothing--qqObjCPropListE :: [C.ObjCIfaceDecl] -> Maybe (Q Exp)-qqObjCPropListE [] = Just [|[]|]-qqObjCPropListE (C.AntiObjCProps p _: props) = Just $ [|$(antiVarE p) ++ $(dataToExpQ qqExp props)|]-qqObjCPropListE _ = Nothing+qqObjcIfaceDeclListE (decl : decls) =+ Just [|$(dataToExpQ qqExp decl) : $(dataToExpQ qqExp decls)|] qqObjCPropAttrE :: C.ObjCPropAttr -> Maybe (Q Exp) qqObjCPropAttrE (C.AntiObjCAttr pa _) = Just $ antiVarE pa@@ -350,14 +471,14 @@ qqObjCPropAttrListE :: [C.ObjCPropAttr] -> Maybe (Q Exp) qqObjCPropAttrListE [] = Just [|[]|] qqObjCPropAttrListE (C.AntiObjCAttrs pa _:attrelems) =- Just $ [|$(antiVarE pa) ++ $(dataToExpQ qqExp attrelems)|]+ Just [|$(antiVarE pa) ++ $(dataToExpQ qqExp attrelems)|] qqObjCPropAttrListE (pattr : pattrs) = Just [|$(dataToExpQ qqExp pattr) : $(dataToExpQ qqExp pattrs)|] qqObjCDictsE :: [C.ObjCDictElem] -> Maybe (Q Exp) qqObjCDictsE [] = Just [|[]|] qqObjCDictsE (C.AntiObjCDictElems e _:elems) =- Just $ [|$(antiVarE e) ++ $(dataToExpQ qqExp elems)|]+ Just [|$(antiVarE e) ++ $(dataToExpQ qqExp elems)|] qqObjCDictsE (elem : elems) = Just [|$(dataToExpQ qqExp elem) : $(dataToExpQ qqExp elems)|] @@ -368,7 +489,7 @@ qqObjCParamsE :: [C.ObjCParam] -> Maybe (Q Exp) qqObjCParamsE [] = Just [|[]|] qqObjCParamsE (C.AntiObjCParams p _: props) =- Just $ [|$(antiVarE p) ++ $(dataToExpQ qqExp props)|]+ Just [|$(antiVarE p) ++ $(dataToExpQ qqExp props)|] qqObjCParamsE (param : params) = Just [|$(dataToExpQ qqExp param) : $(dataToExpQ qqExp params)|] @@ -387,7 +508,7 @@ qqObjCArgsE :: [C.ObjCArg] -> Maybe (Q Exp) qqObjCArgsE [] = Just [|[]|] qqObjCArgsE (C.AntiObjCArgs a _: args) =- Just $ [|$(antiVarE a) ++ $(dataToExpQ qqExp args)|]+ Just [|$(antiVarE a) ++ $(dataToExpQ qqExp args)|] qqObjCArgsE (arg : args) = Just [|$(dataToExpQ qqExp arg) : $(dataToExpQ qqExp args)|] @@ -396,11 +517,15 @@ `extQ` qqIdE `extQ` qqDeclSpecE `extQ` qqDeclE+ `extQ` qqTypeQualE+ `extQ` qqTypeQualListE `extQ` qqTypeE `extQ` qqInitializerE `extQ` qqInitializerListE `extQ` qqInitGroupE `extQ` qqInitGroupListE+ `extQ` qqAttrE+ `extQ` qqAttrListE `extQ` qqFieldGroupE `extQ` qqFieldGroupListE `extQ` qqCEnumE@@ -417,8 +542,7 @@ `extQ` qqBlockItemE `extQ` qqBlockItemListE `extQ` qqObjcIfaceDeclE- `extQ` qqObjCPropE- `extQ` qqObjCPropListE+ `extQ` qqObjcIfaceDeclListE `extQ` qqObjCPropAttrE `extQ` qqObjCPropAttrListE `extQ` qqObjCDictsE@@ -436,7 +560,7 @@ qqStringP s = Just $ litP $ stringL s qqLocP :: Data.Loc.Loc -> Maybe (Q Pat)-qqLocP _ = Just $ wildP+qqLocP _ = Just wildP qqIdP :: C.Id -> Maybe (Q Pat) qqIdP (C.AntiId v _) = Just $ conP (mkName "C.Id") [antiVarP v, wildP]@@ -444,15 +568,27 @@ qqDeclSpecP :: C.DeclSpec -> Maybe (Q Pat) qqDeclSpecP (C.AntiDeclSpec v _) = Just $ antiVarP v-qqDeclSpecP (C.AntiTypeDeclSpec {}) =+qqDeclSpecP C.AntiTypeDeclSpec{} = error "Illegal antiquoted type in pattern" qqDeclSpecP _ = Nothing qqDeclP :: C.Decl -> Maybe (Q Pat)-qqDeclP (C.AntiTypeDecl {}) =+qqDeclP C.AntiTypeDecl{} = error "Illegal antiquoted type in pattern" qqDeclP _ = Nothing +qqTypeQualP :: C.TypeQual -> Maybe (Q Pat)+qqTypeQualP (C.AntiTypeQual v _) = Just $ antiVarP v+qqTypeQualP _ = Nothing++qqTypeQualListP :: [C.TypeQual] -> Maybe (Q Pat)+qqTypeQualListP [] = Just $ listP []+qqTypeQualListP [C.AntiTypeQuals v _] = Just $ antiVarP v+qqTypeQualListP (C.AntiTypeQuals{} : _ : _) =+ error "Antiquoted list of type qualifiers must be last item in quoted list"+qqTypeQualListP (arg : args) =+ Just $ conP (mkName ":") [dataToPatQ qqPat arg, dataToPatQ qqPat args]+ qqTypeP :: C.Type -> Maybe (Q Pat) qqTypeP (C.AntiType v _) = Just $ antiVarP v qqTypeP _ = Nothing@@ -464,7 +600,7 @@ qqInitializerListP :: [C.Initializer] -> Maybe (Q Pat) qqInitializerListP [] = Just $ listP [] qqInitializerListP [C.AntiInits v _] = Just $ antiVarP v-qqInitializerListP (C.AntiInits {} : _ : _) =+qqInitializerListP (C.AntiInits{} : _ : _) = error "Antiquoted list of initializers must be last item in quoted list" qqInitializerListP (ini : inis) = Just $ conP (mkName ":") [dataToPatQ qqPat ini, dataToPatQ qqPat inis]@@ -476,11 +612,23 @@ qqInitGroupListP :: [C.InitGroup] -> Maybe (Q Pat) qqInitGroupListP [] = Just $ listP [] qqInitGroupListP [C.AntiDecls v _] = Just $ antiVarP v-qqInitGroupListP (C.AntiDecls {} : _ : _) =+qqInitGroupListP (C.AntiDecls{} : _ : _) = error "Antiquoted list of initialization groups must be last item in quoted list" qqInitGroupListP (ini : inis) = Just $ conP (mkName ":") [dataToPatQ qqPat ini, dataToPatQ qqPat inis] +qqAttrP :: C.Attr -> Maybe (Q Pat)+qqAttrP (C.AntiAttr v _) = Just $ antiVarP v+qqAttrP _ = Nothing++qqAttrListP :: [C.Attr] -> Maybe (Q Pat)+qqAttrListP [] = Just $ listP []+qqAttrListP [C.AntiAttrs v _] = Just $ antiVarP v+qqAttrListP (C.AntiAttrs{} : _ : _) =+ error "Antiquoted list of attrs must be last item in quoted list"+qqAttrListP (ini : inis) =+ Just $ conP (mkName ":") [dataToPatQ qqPat ini, dataToPatQ qqPat inis]+ qqFieldGroupP :: C.FieldGroup -> Maybe (Q Pat) qqFieldGroupP (C.AntiSdecl v _) = Just $ antiVarP v qqFieldGroupP _ = Nothing@@ -488,7 +636,7 @@ qqFieldGroupListP :: [C.FieldGroup] -> Maybe (Q Pat) qqFieldGroupListP [] = Just $ listP [] qqFieldGroupListP [C.AntiSdecls v _] = Just $ antiVarP v-qqFieldGroupListP (C.AntiSdecls {} : _ : _) =+qqFieldGroupListP (C.AntiSdecls{} : _ : _) = error "Antiquoted list of struct/union fields must be last item in quoted list" qqFieldGroupListP (ini : inis) = Just $ conP (mkName ":") [dataToPatQ qqPat ini, dataToPatQ qqPat inis]@@ -500,7 +648,7 @@ qqCEnumListP :: [C.CEnum] -> Maybe (Q Pat) qqCEnumListP [] = Just $ listP [] qqCEnumListP [C.AntiEnums v _] = Just $ antiVarP v-qqCEnumListP (C.AntiEnums {} : _ : _) =+qqCEnumListP (C.AntiEnums{} : _ : _) = error "Antiquoted list of enumerations must be last item in quoted list" qqCEnumListP (ini : inis) = Just $ conP (mkName ":") [dataToPatQ qqPat ini, dataToPatQ qqPat inis]@@ -512,7 +660,7 @@ qqParamListP :: [C.Param] -> Maybe (Q Pat) qqParamListP [] = Just $ listP [] qqParamListP [C.AntiParams v _] = Just $ antiVarP v-qqParamListP (C.AntiParams {} : _ : _) =+qqParamListP (C.AntiParams{} : _ : _) = error "Antiquoted list of parameters must be last item in quoted list" qqParamListP (arg : args) = Just $ conP (mkName ":") [dataToPatQ qqPat arg, dataToPatQ qqPat args]@@ -526,7 +674,7 @@ qqDefinitionListP :: [C.Definition] -> Maybe (Q Pat) qqDefinitionListP [] = Just $ listP [] qqDefinitionListP [C.AntiEdecls v _] = Just $ antiVarP v-qqDefinitionListP (C.AntiEdecls {} : _ : _) =+qqDefinitionListP (C.AntiEdecls{} : _ : _) = error "Antiquoted list of definitions must be last item in quoted list" qqDefinitionListP (arg : args) = Just $ conP (mkName ":") [dataToPatQ qqPat arg, dataToPatQ qqPat args]@@ -535,23 +683,23 @@ qqConstP = go where go (C.AntiInt v _) =- Just $ (con "C.IntConst") [wildP, signed, antiVarP v, wildP]+ Just $ con "C.IntConst" [wildP, signed, antiVarP v, wildP] go (C.AntiUInt v _) =- Just $ (con "C.IntConst") [wildP, unsigned, antiVarP v, wildP]+ Just $ con "C.IntConst" [wildP, unsigned, antiVarP v, wildP] go (C.AntiLInt v _) =- Just $ (con "C.LongIntConst") [wildP, signed, antiVarP v, wildP]+ Just $ con "C.LongIntConst" [wildP, signed, antiVarP v, wildP] go (C.AntiULInt v _) =- Just $ (con "C.LongIntConst") [wildP, unsigned, antiVarP v, wildP]+ Just $ con "C.LongIntConst" [wildP, unsigned, antiVarP v, wildP] go (C.AntiFloat v _) =- Just $ (con "C.FloatConst") [wildP, antiVarP v, wildP]+ Just $ con "C.FloatConst" [wildP, antiVarP v, wildP] go (C.AntiDouble v _) =- Just $ (con "C.DoubleConst") [wildP, antiVarP v, wildP]+ Just $ con "C.DoubleConst" [wildP, antiVarP v, wildP] go (C.AntiLongDouble v _) =- Just $ (con "C.LongDoubleConst") [wildP, antiVarP v, wildP]+ Just $ con "C.LongDoubleConst" [wildP, antiVarP v, wildP] go (C.AntiChar v _) =- Just $ (con "C.CharConst") [wildP, antiVarP v, wildP]+ Just $ con "C.CharConst" [wildP, antiVarP v, wildP] go (C.AntiString v _) =- Just $ (con "C.StringConst") [wildP, antiVarP v, wildP]+ Just $ con "C.StringConst" [wildP, antiVarP v, wildP] go _ = Nothing @@ -561,25 +709,27 @@ unsigned = conP (mkName "C.Unsigned") [] qqExpP :: C.Exp -> Maybe (Q Pat)-qqExpP (C.AntiExp v _) = Just $ antiVarP v-qqExpP _ = Nothing+qqExpP (C.AntiExp v _) = Just $ antiVarP v+qqExpP (C.AntiEscExp v _) = Just $ conP (mkName "C.EscExp") [antiVarP v, wildP]+qqExpP _ = Nothing qqExpListP :: [C.Exp] -> Maybe (Q Pat) qqExpListP [] = Just $ listP [] qqExpListP [C.AntiArgs v _] = Just $ antiVarP v-qqExpListP (C.AntiArgs {} : _ : _) =+qqExpListP (C.AntiArgs{} : _ : _) = error "Antiquoted list of arguments must be last item in quoted list" qqExpListP (arg : args) = Just $ conP (mkName ":") [dataToPatQ qqPat arg, dataToPatQ qqPat args] qqStmP :: C.Stm -> Maybe (Q Pat)-qqStmP (C.AntiStm v _) = Just $ antiVarP v-qqStmP _ = Nothing+qqStmP (C.AntiStm v _) = Just $ antiVarP v+qqStmP (C.AntiEscStm v _) = Just $ conP (mkName "C.EscStm") [antiVarP v, wildP]+qqStmP _ = Nothing qqStmListP :: [C.Stm] -> Maybe (Q Pat) qqStmListP [] = Just $ listP [] qqStmListP [C.AntiStms v _] = Just $ antiVarP v-qqStmListP (C.AntiStms {} : _ : _) =+qqStmListP (C.AntiStms{} : _ : _) = error "Antiquoted list of statements must be last item in quoted list" qqStmListP (arg : args) = Just $ conP (mkName ":") [dataToPatQ qqPat arg, dataToPatQ qqPat args]@@ -590,12 +740,12 @@ qqBlockItemListP :: [C.BlockItem] -> Maybe (Q Pat) qqBlockItemListP [] = Just $ listP []-qqBlockItemListP (C.BlockDecl (C.AntiDecls {}) : _) =+qqBlockItemListP (C.BlockDecl C.AntiDecls{} : _) = error "Antiquoted list of declarations cannot appear in block"-qqBlockItemListP (C.BlockStm (C.AntiStms {}) : _) =+qqBlockItemListP (C.BlockStm C.AntiStms{} : _) = error "Antiquoted list of statements cannot appear in block" qqBlockItemListP [C.AntiBlockItems v _] = Just $ antiVarP v-qqBlockItemListP (C.AntiBlockItems {} : _ : _) =+qqBlockItemListP (C.AntiBlockItems{} : _ : _) = error "Antiquoted list of block items must be last item in quoted list" qqBlockItemListP (arg : args) = Just $ conP (mkName ":") [dataToPatQ qqPat arg, dataToPatQ qqPat args]@@ -606,11 +756,15 @@ `extQ` qqIdP `extQ` qqDeclSpecP `extQ` qqDeclP+ `extQ` qqTypeQualP+ `extQ` qqTypeQualListP `extQ` qqTypeP `extQ` qqInitializerP `extQ` qqInitializerListP `extQ` qqInitGroupP `extQ` qqInitGroupListP+ `extQ` qqAttrP+ `extQ` qqAttrListP `extQ` qqFieldGroupP `extQ` qqCEnumP `extQ` qqCEnumListP@@ -633,15 +787,13 @@ -> Q a parse exts typenames p s = do loc <- location- case P.parse (C.Antiquotation : exts) typenames p (B.pack s) (locToPos loc) of+ case P.parse (C.Antiquotation : exts) typenames p (B.pack s) (Just (locToPos loc)) of Left err -> fail (show err) Right x -> return x where- locToPos :: Language.Haskell.TH.Loc -> Pos- locToPos loc = Pos (loc_filename loc)- ((fst . loc_start) loc)- ((snd . loc_start) loc)- 0+ locToPos :: TH.Loc -> Pos+ locToPos TH.Loc {loc_filename = filename, loc_start = (line, col)} =+ Pos filename line col 0 quasiquote :: Data a => [C.Extensions]@@ -651,8 +803,8 @@ quasiquote exts typenames p = QuasiQuoter { quoteExp = parse exts typenames p >=> dataToExpQ qqExp , quotePat = parse exts typenames p >=> dataToPatQ qqPat- , quoteType = fail "C type quasiquoter undefined"- , quoteDec = fail "C declaration quasiquoter undefined"+ , quoteType = error "C type quasiquoter undefined"+ , quoteDec = error "C declaration quasiquoter undefined" } #if !MIN_VERSION_template_haskell(2,7,0)
Language/C/Quote/C.hs view
@@ -1,10 +1,10 @@ -- | -- Module : Language.C.Quote.C--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- : (c) Drexel University 2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- : (c) 2013-2015 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu module Language.C.Quote.C ( ToIdent(..),@@ -15,6 +15,7 @@ cdecl, csdecl, cenum,+ ctyquals, cty, cparam, cparams,@@ -39,19 +40,20 @@ typenames = [] cdecl, cedecl, cenum, cexp, cfun, cinit, cparam, cparams, csdecl, cstm, cstms :: QuasiQuoter-citem, citems, cty, cunit :: QuasiQuoter-cdecl = quasiquote exts typenames P.parseDecl-cedecl = quasiquote exts typenames P.parseEdecl-cenum = quasiquote exts typenames P.parseEnum-cexp = quasiquote exts typenames P.parseExp-cfun = quasiquote exts typenames P.parseFunc-cinit = quasiquote exts typenames P.parseInit-cparam = quasiquote exts typenames P.parseParam-cparams = quasiquote exts typenames P.parseParams-csdecl = quasiquote exts typenames P.parseStructDecl-cstm = quasiquote exts typenames P.parseStm-cstms = quasiquote exts typenames P.parseStms-citem = quasiquote exts typenames P.parseBlockItem-citems = quasiquote exts typenames P.parseBlockItems-cty = quasiquote exts typenames P.parseType-cunit = quasiquote exts typenames P.parseUnit+citem, citems, ctyquals, cty, cunit :: QuasiQuoter+cdecl = quasiquote exts typenames P.parseDecl+cedecl = quasiquote exts typenames P.parseEdecl+cenum = quasiquote exts typenames P.parseEnum+cexp = quasiquote exts typenames P.parseExp+cfun = quasiquote exts typenames P.parseFunc+cinit = quasiquote exts typenames P.parseInit+cparam = quasiquote exts typenames P.parseParam+cparams = quasiquote exts typenames P.parseParams+csdecl = quasiquote exts typenames P.parseStructDecl+cstm = quasiquote exts typenames P.parseStm+cstms = quasiquote exts typenames P.parseStms+citem = quasiquote exts typenames P.parseBlockItem+citems = quasiquote exts typenames P.parseBlockItems+ctyquals = quasiquote exts typenames P.parseTypeQuals+cty = quasiquote exts typenames P.parseType+cunit = quasiquote exts typenames P.parseUnit
Language/C/Quote/CUDA.hs view
@@ -1,10 +1,28 @@ -- | -- Module : Language.C.Quote.CUDA--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- : (c) Drexel University 2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- : (c) 2013-2015 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu+-- The quasiquoters exposed by this module support the CUDA extensions, including CUDA-specific declaration specifiers and @\<\<\<…>>>@ kernel invocation syntax.+--+-- It includees partial support for C++11 lambda expressions syntax.+--+-- Support for lambda-expressions has the following limitations:+--+-- * the capture list must either be empty or have only the default capture mode specifier;+--+-- * the return type cannot be explicitly specified;+--+-- * the package supports C language, not C++, therefore lambda parameter list and body must be in valid C syntax.+--+-- Examples of lambdas supported by the 'cexp' quasiquoter:+--+-- > [] (int i) mutable {}+--+-- > [&] { return 7; }+-- module Language.C.Quote.CUDA ( ToIdent(..),@@ -15,6 +33,7 @@ cdecl, csdecl, cenum,+ ctyquals, cty, cparam, cparams,@@ -47,19 +66,20 @@ typeN k typename = [typename ++ show n | n <- [1..k]] cdecl, cedecl, cenum, cexp, cfun, cinit, cparam, cparams, csdecl, cstm, cstms :: QuasiQuoter-citem, citems, cty, cunit :: QuasiQuoter-cdecl = quasiquote exts typenames P.parseDecl-cedecl = quasiquote exts typenames P.parseEdecl-cenum = quasiquote exts typenames P.parseEnum-cexp = quasiquote exts typenames P.parseExp-cfun = quasiquote exts typenames P.parseFunc-cinit = quasiquote exts typenames P.parseInit-cparam = quasiquote exts typenames P.parseParam-cparams = quasiquote exts typenames P.parseParams-csdecl = quasiquote exts typenames P.parseStructDecl-cstm = quasiquote exts typenames P.parseStm-cstms = quasiquote exts typenames P.parseStms-citem = quasiquote exts typenames P.parseBlockItem-citems = quasiquote exts typenames P.parseBlockItems-cty = quasiquote exts typenames P.parseType-cunit = quasiquote exts typenames P.parseUnit+citem, citems, ctyquals, cty, cunit :: QuasiQuoter+cdecl = quasiquote exts typenames P.parseDecl+cedecl = quasiquote exts typenames P.parseEdecl+cenum = quasiquote exts typenames P.parseEnum+cexp = quasiquote exts typenames P.parseExp+cfun = quasiquote exts typenames P.parseFunc+cinit = quasiquote exts typenames P.parseInit+cparam = quasiquote exts typenames P.parseParam+cparams = quasiquote exts typenames P.parseParams+csdecl = quasiquote exts typenames P.parseStructDecl+cstm = quasiquote exts typenames P.parseStm+cstms = quasiquote exts typenames P.parseStms+citem = quasiquote exts typenames P.parseBlockItem+citems = quasiquote exts typenames P.parseBlockItems+ctyquals = quasiquote exts typenames P.parseTypeQuals+cty = quasiquote exts typenames P.parseType+cunit = quasiquote exts typenames P.parseUnit
Language/C/Quote/GCC.hs view
@@ -1,10 +1,10 @@ -- | -- Module : Language.C.Quote.C--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- : (c) Drexel University 2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- : (c) 2013-2015 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu module Language.C.Quote.GCC ( ToIdent(..),@@ -15,6 +15,7 @@ cdecl, csdecl, cenum,+ ctyquals, cty, cparam, cparams,@@ -24,7 +25,8 @@ citem, citems, cunit,- cfun+ cfun,+ cattr ) where import qualified Language.C.Parser as P@@ -39,19 +41,21 @@ typenames = [] cdecl, cedecl, cenum, cexp, cfun, cinit, cparam, cparams, csdecl, cstm, cstms :: QuasiQuoter-citem, citems, cty, cunit :: QuasiQuoter-cdecl = quasiquote exts typenames P.parseDecl-cedecl = quasiquote exts typenames P.parseEdecl-cenum = quasiquote exts typenames P.parseEnum-cexp = quasiquote exts typenames P.parseExp-cfun = quasiquote exts typenames P.parseFunc-cinit = quasiquote exts typenames P.parseInit-cparam = quasiquote exts typenames P.parseParam-cparams = quasiquote exts typenames P.parseParams-csdecl = quasiquote exts typenames P.parseStructDecl-cstm = quasiquote exts typenames P.parseStm-cstms = quasiquote exts typenames P.parseStms-citem = quasiquote exts typenames P.parseBlockItem-citems = quasiquote exts typenames P.parseBlockItems-cty = quasiquote exts typenames P.parseType-cunit = quasiquote exts typenames P.parseUnit+citem, citems, ctyquals, cty, cunit, cattr :: QuasiQuoter+cdecl = quasiquote exts typenames P.parseDecl+cedecl = quasiquote exts typenames P.parseEdecl+cenum = quasiquote exts typenames P.parseEnum+cexp = quasiquote exts typenames P.parseExp+cfun = quasiquote exts typenames P.parseFunc+cinit = quasiquote exts typenames P.parseInit+cparam = quasiquote exts typenames P.parseParam+cparams = quasiquote exts typenames P.parseParams+csdecl = quasiquote exts typenames P.parseStructDecl+cstm = quasiquote exts typenames P.parseStm+cstms = quasiquote exts typenames P.parseStms+citem = quasiquote exts typenames P.parseBlockItem+citems = quasiquote exts typenames P.parseBlockItems+ctyquals = quasiquote exts typenames P.parseTypeQuals+cty = quasiquote exts typenames P.parseType+cunit = quasiquote exts typenames P.parseUnit+cattr = quasiquote exts typenames P.parseAttr
Language/C/Quote/ObjC.hs view
@@ -1,11 +1,11 @@ -- | -- Module : Language.C.Quote.ObjC--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- (c) Manuel M T Chakravarty 2013-2014--- : (c) Drexel University 2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- (c) 2013-2014 Manuel M T Chakravarty+-- : (c) 2013-2015 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu {-# LANGUAGE FlexibleInstances #-} @@ -19,6 +19,7 @@ cdecl, csdecl, cenum,+ ctyquals, cty, cparam, cparams,@@ -47,7 +48,7 @@ import Language.Haskell.TH.Quote (QuasiQuoter) exts :: [C.Extensions]-exts = [C.ObjC]+exts = [C.ObjC, C.Blocks, C.Gcc] typenames :: [String] typenames = ["id", "instancetype"]@@ -71,22 +72,23 @@ objcLit = ObjCLit cdecl, cedecl, cenum, cexp, cfun, cinit, cparam, cparams, csdecl, cstm, cstms :: QuasiQuoter-citem, citems, cty, cunit :: QuasiQuoter-cdecl = quasiquote exts typenames P.parseDecl-cedecl = quasiquote exts typenames P.parseEdecl-cenum = quasiquote exts typenames P.parseEnum-cexp = quasiquote exts typenames P.parseExp-cfun = quasiquote exts typenames P.parseFunc-cinit = quasiquote exts typenames P.parseInit-cparam = quasiquote exts typenames P.parseParam-cparams = quasiquote exts typenames P.parseParams-csdecl = quasiquote exts typenames P.parseStructDecl-cstm = quasiquote exts typenames P.parseStm-cstms = quasiquote exts typenames P.parseStms-citem = quasiquote exts typenames P.parseBlockItem-citems = quasiquote exts typenames P.parseBlockItems-cty = quasiquote exts typenames P.parseType-cunit = quasiquote exts typenames P.parseUnit+citem, citems, ctyquals, cty, cunit :: QuasiQuoter+cdecl = quasiquote exts typenames P.parseDecl+cedecl = quasiquote exts typenames P.parseEdecl+cenum = quasiquote exts typenames P.parseEnum+cexp = quasiquote exts typenames P.parseExp+cfun = quasiquote exts typenames P.parseFunc+cinit = quasiquote exts typenames P.parseInit+cparam = quasiquote exts typenames P.parseParam+cparams = quasiquote exts typenames P.parseParams+csdecl = quasiquote exts typenames P.parseStructDecl+cstm = quasiquote exts typenames P.parseStm+cstms = quasiquote exts typenames P.parseStms+citem = quasiquote exts typenames P.parseBlockItem+citems = quasiquote exts typenames P.parseBlockItems+ctyquals = quasiquote exts typenames P.parseTypeQuals+cty = quasiquote exts typenames P.parseType+cunit = quasiquote exts typenames P.parseUnit objcprop, objcpropattr, objcifdecls, objcimdecls, objcdictelem, objcmethparam, objcmethproto :: QuasiQuoter objcmethdef, objcmethrecv, objcarg :: QuasiQuoter
Language/C/Quote/OpenCL.hs view
@@ -1,9 +1,10 @@ -- | -- Module : Language.C.Quote.OpenCL--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- : (c) 2013-2015 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu module Language.C.Quote.OpenCL ( ToIdent(..),@@ -14,6 +15,7 @@ cdecl, csdecl, cenum,+ ctyquals, cty, cparam, cparams,@@ -51,19 +53,20 @@ typeN typename = [typename ++ show n | n <- [2, 3, 4, 8, 16 :: Integer]] cdecl, cedecl, cenum, cexp, cfun, cinit, cparam, cparams, csdecl, cstm, cstms :: QuasiQuoter-citem, citems, cty, cunit :: QuasiQuoter-cdecl = quasiquote exts typenames P.parseDecl-cedecl = quasiquote exts typenames P.parseEdecl-cenum = quasiquote exts typenames P.parseEnum-cexp = quasiquote exts typenames P.parseExp-cfun = quasiquote exts typenames P.parseFunc-cinit = quasiquote exts typenames P.parseInit-cparam = quasiquote exts typenames P.parseParam-cparams = quasiquote exts typenames P.parseParams-csdecl = quasiquote exts typenames P.parseStructDecl-cstm = quasiquote exts typenames P.parseStm-cstms = quasiquote exts typenames P.parseStms-citem = quasiquote exts typenames P.parseBlockItem-citems = quasiquote exts typenames P.parseBlockItems-cty = quasiquote exts typenames P.parseType-cunit = quasiquote exts typenames P.parseUnit+citem, citems, ctyquals, cty, cunit :: QuasiQuoter+cdecl = quasiquote exts typenames P.parseDecl+cedecl = quasiquote exts typenames P.parseEdecl+cenum = quasiquote exts typenames P.parseEnum+cexp = quasiquote exts typenames P.parseExp+cfun = quasiquote exts typenames P.parseFunc+cinit = quasiquote exts typenames P.parseInit+cparam = quasiquote exts typenames P.parseParam+cparams = quasiquote exts typenames P.parseParams+csdecl = quasiquote exts typenames P.parseStructDecl+cstm = quasiquote exts typenames P.parseStm+cstms = quasiquote exts typenames P.parseStms+citem = quasiquote exts typenames P.parseBlockItem+citems = quasiquote exts typenames P.parseBlockItems+ctyquals = quasiquote exts typenames P.parseTypeQuals+cty = quasiquote exts typenames P.parseType+cunit = quasiquote exts typenames P.parseUnit
Language/C/Smart.hs view
@@ -1,9 +1,9 @@ -- | -- Module : Language.C.Smart--- Copyright : (c) Harvard University 2010-2011--- (c) Geoffrey Mainland 2011-2013+-- Copyright : (c) 2010-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu {-# LANGUAGE CPP #-} {-# LANGUAGE QuasiQuotes #-}@@ -16,7 +16,6 @@ #if !MIN_VERSION_template_haskell(2,7,0) import qualified Data.Loc-import qualified Data.Symbol import qualified Language.C.Syntax #endif /* !MIN_VERSION_template_haskell(2,7,0) */ @@ -41,9 +40,9 @@ fromInteger n = [cexp|$int:n|] instance Real C.Exp where- toRational [cexp|$float:n|] = n- toRational [cexp|$double:n|] = n- toRational [cexp|$ldouble:n|] = n+ toRational [cexp|$float:n|] = toRational n+ toRational [cexp|$double:n|] = toRational n+ toRational [cexp|$ldouble:n|] = toRational n toRational _ = error "fromEnum: non-rational constant C expressions"@@ -63,7 +62,7 @@ e1 / e2 = [cexp|$exp:e1 / $exp:e2|] recip e = [cexp|1 / $exp:e|] - fromRational n = [cexp|$double:n|]+ fromRational n = [cexp|$double:(fromRational n)|] instance Floating C.Exp where pi = [cexp|3.141592653589793238|]
+ Language/C/Syntax-instances.hs view
@@ -0,0 +1,625 @@+instance Located Id where+ locOf (Id _ l) = locOf l+ locOf (AntiId _ l) = locOf l+instance Located StringLit where+ locOf (StringLit _ _ l) = locOf l+instance Located Storage where+ locOf (Tauto l) = locOf l+ locOf (Tregister l) = locOf l+ locOf (Tstatic l) = locOf l+ locOf (Textern _ l) = locOf l+ locOf (Ttypedef l) = locOf l+ locOf (T__block l) = locOf l+ locOf (TObjC__weak l) = locOf l+ locOf (TObjC__strong l) = locOf l+ locOf (TObjC__unsafe_unretained l) = locOf l+instance Located TypeQual where+ locOf (Tconst l) = locOf l+ locOf (Tvolatile l) = locOf l+ locOf (EscTypeQual _ l) = locOf l+ locOf (AntiTypeQual _ l) = locOf l+ locOf (AntiTypeQuals _ l) = locOf l+ locOf (Tinline l) = locOf l+ locOf (Trestrict l) = locOf l+ locOf (T__restrict l) = locOf l+ locOf (TAttr _) = noLoc+ locOf (TCUDAdevice l) = locOf l+ locOf (TCUDAglobal l) = locOf l+ locOf (TCUDAhost l) = locOf l+ locOf (TCUDAconstant l) = locOf l+ locOf (TCUDAshared l) = locOf l+ locOf (TCUDArestrict l) = locOf l+ locOf (TCUDAnoinline l) = locOf l+ locOf (TCLprivate l) = locOf l+ locOf (TCLlocal l) = locOf l+ locOf (TCLglobal l) = locOf l+ locOf (TCLconstant l) = locOf l+ locOf (TCLreadonly l) = locOf l+ locOf (TCLwriteonly l) = locOf l+ locOf (TCLkernel l) = locOf l+instance Located Sign where+ locOf (Tsigned l) = locOf l+ locOf (Tunsigned l) = locOf l+instance Located TypeSpec where+ locOf (Tvoid l) = locOf l+ locOf (Tchar _ l) = locOf l+ locOf (Tshort _ l) = locOf l+ locOf (Tint _ l) = locOf l+ locOf (Tlong _ l) = locOf l+ locOf (Tlong_long _ l) = locOf l+ locOf (Tfloat l) = locOf l+ locOf (Tdouble l) = locOf l+ locOf (Tlong_double l) = locOf l+ locOf (Tstruct _ _ _ l) = locOf l+ locOf (Tunion _ _ _ l) = locOf l+ locOf (Tenum _ _ _ l) = locOf l+ locOf (Tnamed _ _ l) = locOf l+ locOf (T_Bool l) = locOf l+ locOf (Tfloat_Complex l) = locOf l+ locOf (Tdouble_Complex l) = locOf l+ locOf (Tlong_double_Complex l) = locOf l+ locOf (Tfloat_Imaginary l) = locOf l+ locOf (Tdouble_Imaginary l) = locOf l+ locOf (Tlong_double_Imaginary l) = locOf l+ locOf (TtypeofExp _ l) = locOf l+ locOf (TtypeofType _ l) = locOf l+ locOf (Tva_list l) = locOf l+instance Located DeclSpec where+ locOf (DeclSpec _ _ _ l) = locOf l+ locOf (AntiDeclSpec _ l) = locOf l+ locOf (AntiTypeDeclSpec _ _ _ l) = locOf l+instance Located ArraySize where+ locOf (ArraySize _ _ l) = locOf l+ locOf (VariableArraySize l) = locOf l+ locOf (NoArraySize l) = locOf l+instance Located Decl where+ locOf (DeclRoot l) = locOf l+ locOf (Ptr _ _ l) = locOf l+ locOf (Array _ _ _ l) = locOf l+ locOf (Proto _ _ l) = locOf l+ locOf (OldProto _ _ l) = locOf l+ locOf (AntiTypeDecl _ l) = locOf l+ locOf (BlockPtr _ _ l) = locOf l+instance Located Type where+ locOf (Type _ _ l) = locOf l+ locOf (AntiType _ l) = locOf l+instance Located Designator where+ locOf (IndexDesignator _ l) = locOf l+ locOf (MemberDesignator _ l) = locOf l+instance Located Designation where+ locOf (Designation _ l) = locOf l+instance Located Initializer where+ locOf (ExpInitializer _ l) = locOf l+ locOf (CompoundInitializer _ l) = locOf l+ locOf (AntiInit _ l) = locOf l+ locOf (AntiInits _ l) = locOf l+instance Located Init where+ locOf (Init _ _ _ _ _ l) = locOf l+instance Located Typedef where+ locOf (Typedef _ _ _ l) = locOf l+instance Located InitGroup where+ locOf (InitGroup _ _ _ l) = locOf l+ locOf (TypedefGroup _ _ _ l) = locOf l+ locOf (AntiDecl _ l) = locOf l+ locOf (AntiDecls _ l) = locOf l+instance Located Field where+ locOf (Field _ _ _ l) = locOf l+instance Located FieldGroup where+ locOf (FieldGroup _ _ l) = locOf l+ locOf (AntiSdecl _ l) = locOf l+ locOf (AntiSdecls _ l) = locOf l+instance Located CEnum where+ locOf (CEnum _ _ l) = locOf l+ locOf (AntiEnum _ l) = locOf l+ locOf (AntiEnums _ l) = locOf l+instance Located Attr where+ locOf (Attr _ _ l) = locOf l+ locOf (AntiAttr _ l) = locOf l+ locOf (AntiAttrs _ l) = locOf l+instance Located Param where+ locOf (Param _ _ _ l) = locOf l+ locOf (AntiParam _ l) = locOf l+ locOf (AntiParams _ l) = locOf l+instance Located Params where+ locOf (Params _ _ l) = locOf l+instance Located Func where+ locOf (Func _ _ _ _ _ l) = locOf l+ locOf (OldFunc _ _ _ _ _ _ l) = locOf l+instance Located Definition where+ locOf (FuncDef _ l) = locOf l+ locOf (DecDef _ l) = locOf l+ locOf (EscDef _ l) = locOf l+ locOf (AntiFunc _ l) = locOf l+ locOf (AntiEsc _ l) = locOf l+ locOf (AntiEdecl _ l) = locOf l+ locOf (AntiEdecls _ l) = locOf l+ locOf (ObjCClassDec _ l) = locOf l+ locOf (ObjCClassIface _ _ _ _ _ _ l) = locOf l+ locOf (ObjCCatIface _ _ _ _ _ l) = locOf l+ locOf (ObjCProtDec _ l) = locOf l+ locOf (ObjCProtDef _ _ _ l) = locOf l+ locOf (ObjCClassImpl _ _ _ _ l) = locOf l+ locOf (ObjCCatImpl _ _ _ l) = locOf l+ locOf (ObjCSynDef _ l) = locOf l+ locOf (ObjCDynDef _ l) = locOf l+ locOf (ObjCMethDef _ _ l) = locOf l+ locOf (ObjCCompAlias _ _ l) = locOf l+ locOf (AntiObjCMeth _ l) = locOf l+ locOf (AntiObjCMeths _ l) = locOf l+instance Located Stm where+ locOf (Label _ _ _ l) = locOf l+ locOf (Case _ _ l) = locOf l+ locOf (CaseRange _ _ _ l) = locOf l+ locOf (Default _ l) = locOf l+ locOf (Exp _ l) = locOf l+ locOf (Block _ l) = locOf l+ locOf (If _ _ _ l) = locOf l+ locOf (Switch _ _ l) = locOf l+ locOf (While _ _ l) = locOf l+ locOf (DoWhile _ _ l) = locOf l+ locOf (For _ _ _ _ l) = locOf l+ locOf (Goto _ l) = locOf l+ locOf (Continue l) = locOf l+ locOf (Break l) = locOf l+ locOf (Return _ l) = locOf l+ locOf (Pragma _ l) = locOf l+ locOf (Comment _ _ l) = locOf l+ locOf (EscStm _ l) = locOf l+ locOf (AntiEscStm _ l) = locOf l+ locOf (AntiPragma _ l) = locOf l+ locOf (AntiComment _ _ l) = locOf l+ locOf (AntiStm _ l) = locOf l+ locOf (AntiStms _ l) = locOf l+ locOf (Asm _ _ _ _ _ _ l) = locOf l+ locOf (AsmGoto _ _ _ _ _ _ l) = locOf l+ locOf (ObjCTry _ _ _ l) = locOf l+ locOf (ObjCThrow _ l) = locOf l+ locOf (ObjCSynchronized _ _ l) = locOf l+ locOf (ObjCAutoreleasepool _ l) = locOf l+instance Located BlockItem where+ locOf (BlockDecl _) = noLoc+ locOf (BlockStm _) = noLoc+ locOf (AntiBlockItem _ l) = locOf l+ locOf (AntiBlockItems _ l) = locOf l+instance Located Const where+ locOf (IntConst _ _ _ l) = locOf l+ locOf (LongIntConst _ _ _ l) = locOf l+ locOf (LongLongIntConst _ _ _ l) = locOf l+ locOf (FloatConst _ _ l) = locOf l+ locOf (DoubleConst _ _ l) = locOf l+ locOf (LongDoubleConst _ _ l) = locOf l+ locOf (CharConst _ _ l) = locOf l+ locOf (StringConst _ _ l) = locOf l+ locOf (AntiConst _ l) = locOf l+ locOf (AntiInt _ l) = locOf l+ locOf (AntiUInt _ l) = locOf l+ locOf (AntiLInt _ l) = locOf l+ locOf (AntiULInt _ l) = locOf l+ locOf (AntiLLInt _ l) = locOf l+ locOf (AntiULLInt _ l) = locOf l+ locOf (AntiFloat _ l) = locOf l+ locOf (AntiDouble _ l) = locOf l+ locOf (AntiLongDouble _ l) = locOf l+ locOf (AntiChar _ l) = locOf l+ locOf (AntiString _ l) = locOf l+instance Located Exp where+ locOf (Var _ l) = locOf l+ locOf (Const _ l) = locOf l+ locOf (BinOp _ _ _ l) = locOf l+ locOf (Assign _ _ _ l) = locOf l+ locOf (PreInc _ l) = locOf l+ locOf (PostInc _ l) = locOf l+ locOf (PreDec _ l) = locOf l+ locOf (PostDec _ l) = locOf l+ locOf (UnOp _ _ l) = locOf l+ locOf (SizeofExp _ l) = locOf l+ locOf (SizeofType _ l) = locOf l+ locOf (Cast _ _ l) = locOf l+ locOf (Cond _ _ _ l) = locOf l+ locOf (Member _ _ l) = locOf l+ locOf (PtrMember _ _ l) = locOf l+ locOf (Index _ _ l) = locOf l+ locOf (FnCall _ _ l) = locOf l+ locOf (CudaCall _ _ _ l) = locOf l+ locOf (Seq _ _ l) = locOf l+ locOf (CompoundLit _ _ l) = locOf l+ locOf (StmExpr _ l) = locOf l+ locOf (EscExp _ l) = locOf l+ locOf (AntiEscExp _ l) = locOf l+ locOf (AntiExp _ l) = locOf l+ locOf (AntiArgs _ l) = locOf l+ locOf (BuiltinVaArg _ _ l) = locOf l+ locOf (BlockLit _ _ _ l) = locOf l+ locOf (ObjCMsg _ _ _ l) = locOf l+ locOf (ObjCLitConst _ _ l) = locOf l+ locOf (ObjCLitString _ l) = locOf l+ locOf (ObjCLitBool _ l) = locOf l+ locOf (ObjCLitArray _ l) = locOf l+ locOf (ObjCLitDict _ l) = locOf l+ locOf (ObjCLitBoxed _ l) = locOf l+ locOf (ObjCEncode _ l) = locOf l+ locOf (ObjCProtocol _ l) = locOf l+ locOf (ObjCSelector _ l) = locOf l+ locOf (Lambda _ _ _ l) = locOf l+instance Located LambdaIntroducer where+ locOf (LambdaIntroducer _ l) = locOf l+instance Located LambdaDeclarator where+ locOf (LambdaDeclarator _ _ _ l) = locOf l+instance Located BlockType where+ locOf (BlockVoid l) = locOf l+ locOf (BlockParam _ l) = locOf l+ locOf (BlockType _ l) = locOf l+instance Located ExeConfig where+ locOf (ExeConfig _ _ _ _ l) = locOf l+instance Located ObjCIvarDecl where+ locOf (ObjCIvarVisi _ l) = locOf l+ locOf (ObjCIvarDecl _ l) = locOf l+instance Located ObjCVisibilitySpec where+ locOf (ObjCPrivate l) = locOf l+ locOf (ObjCPublic l) = locOf l+ locOf (ObjCProtected l) = locOf l+ locOf (ObjCPackage l) = locOf l+instance Located ObjCIfaceDecl where+ locOf (ObjCIfaceProp _ _ l) = locOf l+ locOf (ObjCIfaceReq _ l) = locOf l+ locOf (ObjCIfaceMeth _ l) = locOf l+ locOf (ObjCIfaceDecl _ l) = locOf l+ locOf (AntiObjCProp _ l) = locOf l+ locOf (AntiObjCProps _ l) = locOf l+ locOf (AntiObjCIfaceDecl _ l) = locOf l+ locOf (AntiObjCIfaceDecls _ l) = locOf l+instance Located ObjCPropAttr where+ locOf (ObjCGetter _ l) = locOf l+ locOf (ObjCSetter _ l) = locOf l+ locOf (ObjCReadonly l) = locOf l+ locOf (ObjCReadwrite l) = locOf l+ locOf (ObjCAssign l) = locOf l+ locOf (ObjCRetain l) = locOf l+ locOf (ObjCCopy l) = locOf l+ locOf (ObjCNonatomic l) = locOf l+ locOf (ObjCAtomic l) = locOf l+ locOf (ObjCStrong l) = locOf l+ locOf (ObjCWeak l) = locOf l+ locOf (ObjCUnsafeUnretained l) = locOf l+ locOf (AntiObjCAttr _ l) = locOf l+ locOf (AntiObjCAttrs _ l) = locOf l+instance Located ObjCMethodReq where+ locOf (ObjCRequired l) = locOf l+ locOf (ObjCOptional l) = locOf l+instance Located ObjCParam where+ locOf (ObjCParam _ _ _ _ l) = locOf l+ locOf (AntiObjCParam _ l) = locOf l+ locOf (AntiObjCParams _ l) = locOf l+instance Located ObjCMethodProto where+ locOf (ObjCMethodProto _ _ _ _ _ _ l) = locOf l+ locOf (AntiObjCMethodProto _ l) = locOf l+instance Located ObjCCatch where+ locOf (ObjCCatch _ _ l) = locOf l+instance Located ObjCRecv where+ locOf (ObjCRecvSuper l) = locOf l+ locOf (ObjCRecvExp _ l) = locOf l+ locOf (AntiObjCRecv _ l) = locOf l+instance Located ObjCArg where+ locOf (ObjCArg _ _ l) = locOf l+ locOf (AntiObjCArg _ l) = locOf l+ locOf (AntiObjCArgs _ l) = locOf l+instance Located ObjCDictElem where+ locOf (ObjCDictElem _ _ l) = locOf l+ locOf (AntiObjCDictElems _ l) = locOf l+instance Relocatable Id where+ reloc l (Id x0 _) = (Id x0 (fromLoc l))+ reloc l (AntiId x0 _) = (AntiId x0 (fromLoc l))+instance Relocatable StringLit where+ reloc l (StringLit x0 x1 _) = (StringLit x0 x1 (fromLoc l))+instance Relocatable Storage where+ reloc l (Tauto _) = (Tauto (fromLoc l))+ reloc l (Tregister _) = (Tregister (fromLoc l))+ reloc l (Tstatic _) = (Tstatic (fromLoc l))+ reloc l (Textern x0 _) = (Textern x0 (fromLoc l))+ reloc l (Ttypedef _) = (Ttypedef (fromLoc l))+ reloc l (T__block _) = (T__block (fromLoc l))+ reloc l (TObjC__weak _) = (TObjC__weak (fromLoc l))+ reloc l (TObjC__strong _) = (TObjC__strong (fromLoc l))+ reloc l (TObjC__unsafe_unretained _) = (TObjC__unsafe_unretained (fromLoc l))+instance Relocatable TypeQual where+ reloc l (Tconst _) = (Tconst (fromLoc l))+ reloc l (Tvolatile _) = (Tvolatile (fromLoc l))+ reloc l (EscTypeQual x0 _) = (EscTypeQual x0 (fromLoc l))+ reloc l (AntiTypeQual x0 _) = (AntiTypeQual x0 (fromLoc l))+ reloc l (AntiTypeQuals x0 _) = (AntiTypeQuals x0 (fromLoc l))+ reloc l (Tinline _) = (Tinline (fromLoc l))+ reloc l (Trestrict _) = (Trestrict (fromLoc l))+ reloc l (T__restrict _) = (T__restrict (fromLoc l))+ reloc _ (TAttr x0) = (TAttr x0)+ reloc l (TCUDAdevice _) = (TCUDAdevice (fromLoc l))+ reloc l (TCUDAglobal _) = (TCUDAglobal (fromLoc l))+ reloc l (TCUDAhost _) = (TCUDAhost (fromLoc l))+ reloc l (TCUDAconstant _) = (TCUDAconstant (fromLoc l))+ reloc l (TCUDAshared _) = (TCUDAshared (fromLoc l))+ reloc l (TCUDArestrict _) = (TCUDArestrict (fromLoc l))+ reloc l (TCUDAnoinline _) = (TCUDAnoinline (fromLoc l))+ reloc l (TCLprivate _) = (TCLprivate (fromLoc l))+ reloc l (TCLlocal _) = (TCLlocal (fromLoc l))+ reloc l (TCLglobal _) = (TCLglobal (fromLoc l))+ reloc l (TCLconstant _) = (TCLconstant (fromLoc l))+ reloc l (TCLreadonly _) = (TCLreadonly (fromLoc l))+ reloc l (TCLwriteonly _) = (TCLwriteonly (fromLoc l))+ reloc l (TCLkernel _) = (TCLkernel (fromLoc l))+instance Relocatable Sign where+ reloc l (Tsigned _) = (Tsigned (fromLoc l))+ reloc l (Tunsigned _) = (Tunsigned (fromLoc l))+instance Relocatable TypeSpec where+ reloc l (Tvoid _) = (Tvoid (fromLoc l))+ reloc l (Tchar x0 _) = (Tchar x0 (fromLoc l))+ reloc l (Tshort x0 _) = (Tshort x0 (fromLoc l))+ reloc l (Tint x0 _) = (Tint x0 (fromLoc l))+ reloc l (Tlong x0 _) = (Tlong x0 (fromLoc l))+ reloc l (Tlong_long x0 _) = (Tlong_long x0 (fromLoc l))+ reloc l (Tfloat _) = (Tfloat (fromLoc l))+ reloc l (Tdouble _) = (Tdouble (fromLoc l))+ reloc l (Tlong_double _) = (Tlong_double (fromLoc l))+ reloc l (Tstruct x0 x1 x2 _) = (Tstruct x0 x1 x2 (fromLoc l))+ reloc l (Tunion x0 x1 x2 _) = (Tunion x0 x1 x2 (fromLoc l))+ reloc l (Tenum x0 x1 x2 _) = (Tenum x0 x1 x2 (fromLoc l))+ reloc l (Tnamed x0 x1 _) = (Tnamed x0 x1 (fromLoc l))+ reloc l (T_Bool _) = (T_Bool (fromLoc l))+ reloc l (Tfloat_Complex _) = (Tfloat_Complex (fromLoc l))+ reloc l (Tdouble_Complex _) = (Tdouble_Complex (fromLoc l))+ reloc l (Tlong_double_Complex _) = (Tlong_double_Complex (fromLoc l))+ reloc l (Tfloat_Imaginary _) = (Tfloat_Imaginary (fromLoc l))+ reloc l (Tdouble_Imaginary _) = (Tdouble_Imaginary (fromLoc l))+ reloc l (Tlong_double_Imaginary _) = (Tlong_double_Imaginary (fromLoc l))+ reloc l (TtypeofExp x0 _) = (TtypeofExp x0 (fromLoc l))+ reloc l (TtypeofType x0 _) = (TtypeofType x0 (fromLoc l))+ reloc l (Tva_list _) = (Tva_list (fromLoc l))+instance Relocatable DeclSpec where+ reloc l (DeclSpec x0 x1 x2 _) = (DeclSpec x0 x1 x2 (fromLoc l))+ reloc l (AntiDeclSpec x0 _) = (AntiDeclSpec x0 (fromLoc l))+ reloc l (AntiTypeDeclSpec x0 x1 x2 _) =+ (AntiTypeDeclSpec x0 x1 x2 (fromLoc l))+instance Relocatable ArraySize where+ reloc l (ArraySize x0 x1 _) = (ArraySize x0 x1 (fromLoc l))+ reloc l (VariableArraySize _) = (VariableArraySize (fromLoc l))+ reloc l (NoArraySize _) = (NoArraySize (fromLoc l))+instance Relocatable Decl where+ reloc l (DeclRoot _) = (DeclRoot (fromLoc l))+ reloc l (Ptr x0 x1 _) = (Ptr x0 x1 (fromLoc l))+ reloc l (Array x0 x1 x2 _) = (Array x0 x1 x2 (fromLoc l))+ reloc l (Proto x0 x1 _) = (Proto x0 x1 (fromLoc l))+ reloc l (OldProto x0 x1 _) = (OldProto x0 x1 (fromLoc l))+ reloc l (AntiTypeDecl x0 _) = (AntiTypeDecl x0 (fromLoc l))+ reloc l (BlockPtr x0 x1 _) = (BlockPtr x0 x1 (fromLoc l))+instance Relocatable Type where+ reloc l (Type x0 x1 _) = (Type x0 x1 (fromLoc l))+ reloc l (AntiType x0 _) = (AntiType x0 (fromLoc l))+instance Relocatable Designator where+ reloc l (IndexDesignator x0 _) = (IndexDesignator x0 (fromLoc l))+ reloc l (MemberDesignator x0 _) = (MemberDesignator x0 (fromLoc l))+instance Relocatable Designation where+ reloc l (Designation x0 _) = (Designation x0 (fromLoc l))+instance Relocatable Initializer where+ reloc l (ExpInitializer x0 _) = (ExpInitializer x0 (fromLoc l))+ reloc l (CompoundInitializer x0 _) = (CompoundInitializer x0 (fromLoc l))+ reloc l (AntiInit x0 _) = (AntiInit x0 (fromLoc l))+ reloc l (AntiInits x0 _) = (AntiInits x0 (fromLoc l))+instance Relocatable Init where+ reloc l (Init x0 x1 x2 x3 x4 _) = (Init x0 x1 x2 x3 x4 (fromLoc l))+instance Relocatable Typedef where+ reloc l (Typedef x0 x1 x2 _) = (Typedef x0 x1 x2 (fromLoc l))+instance Relocatable InitGroup where+ reloc l (InitGroup x0 x1 x2 _) = (InitGroup x0 x1 x2 (fromLoc l))+ reloc l (TypedefGroup x0 x1 x2 _) = (TypedefGroup x0 x1 x2 (fromLoc l))+ reloc l (AntiDecl x0 _) = (AntiDecl x0 (fromLoc l))+ reloc l (AntiDecls x0 _) = (AntiDecls x0 (fromLoc l))+instance Relocatable Field where+ reloc l (Field x0 x1 x2 _) = (Field x0 x1 x2 (fromLoc l))+instance Relocatable FieldGroup where+ reloc l (FieldGroup x0 x1 _) = (FieldGroup x0 x1 (fromLoc l))+ reloc l (AntiSdecl x0 _) = (AntiSdecl x0 (fromLoc l))+ reloc l (AntiSdecls x0 _) = (AntiSdecls x0 (fromLoc l))+instance Relocatable CEnum where+ reloc l (CEnum x0 x1 _) = (CEnum x0 x1 (fromLoc l))+ reloc l (AntiEnum x0 _) = (AntiEnum x0 (fromLoc l))+ reloc l (AntiEnums x0 _) = (AntiEnums x0 (fromLoc l))+instance Relocatable Attr where+ reloc l (Attr x0 x1 _) = (Attr x0 x1 (fromLoc l))+ reloc l (AntiAttr x0 _) = (AntiAttr x0 (fromLoc l))+ reloc l (AntiAttrs x0 _) = (AntiAttrs x0 (fromLoc l))+instance Relocatable Param where+ reloc l (Param x0 x1 x2 _) = (Param x0 x1 x2 (fromLoc l))+ reloc l (AntiParam x0 _) = (AntiParam x0 (fromLoc l))+ reloc l (AntiParams x0 _) = (AntiParams x0 (fromLoc l))+instance Relocatable Params where+ reloc l (Params x0 x1 _) = (Params x0 x1 (fromLoc l))+instance Relocatable Func where+ reloc l (Func x0 x1 x2 x3 x4 _) = (Func x0 x1 x2 x3 x4 (fromLoc l))+ reloc l (OldFunc x0 x1 x2 x3 x4 x5 _) =+ (OldFunc x0 x1 x2 x3 x4 x5 (fromLoc l))+instance Relocatable Definition where+ reloc l (FuncDef x0 _) = (FuncDef x0 (fromLoc l))+ reloc l (DecDef x0 _) = (DecDef x0 (fromLoc l))+ reloc l (EscDef x0 _) = (EscDef x0 (fromLoc l))+ reloc l (AntiFunc x0 _) = (AntiFunc x0 (fromLoc l))+ reloc l (AntiEsc x0 _) = (AntiEsc x0 (fromLoc l))+ reloc l (AntiEdecl x0 _) = (AntiEdecl x0 (fromLoc l))+ reloc l (AntiEdecls x0 _) = (AntiEdecls x0 (fromLoc l))+ reloc l (ObjCClassDec x0 _) = (ObjCClassDec x0 (fromLoc l))+ reloc l (ObjCClassIface x0 x1 x2 x3 x4 x5 _) =+ (ObjCClassIface x0 x1 x2 x3 x4 x5 (fromLoc l))+ reloc l (ObjCCatIface x0 x1 x2 x3 x4 _) =+ (ObjCCatIface x0 x1 x2 x3 x4 (fromLoc l))+ reloc l (ObjCProtDec x0 _) = (ObjCProtDec x0 (fromLoc l))+ reloc l (ObjCProtDef x0 x1 x2 _) = (ObjCProtDef x0 x1 x2 (fromLoc l))+ reloc l (ObjCClassImpl x0 x1 x2 x3 _) =+ (ObjCClassImpl x0 x1 x2 x3 (fromLoc l))+ reloc l (ObjCCatImpl x0 x1 x2 _) = (ObjCCatImpl x0 x1 x2 (fromLoc l))+ reloc l (ObjCSynDef x0 _) = (ObjCSynDef x0 (fromLoc l))+ reloc l (ObjCDynDef x0 _) = (ObjCDynDef x0 (fromLoc l))+ reloc l (ObjCMethDef x0 x1 _) = (ObjCMethDef x0 x1 (fromLoc l))+ reloc l (ObjCCompAlias x0 x1 _) = (ObjCCompAlias x0 x1 (fromLoc l))+ reloc l (AntiObjCMeth x0 _) = (AntiObjCMeth x0 (fromLoc l))+ reloc l (AntiObjCMeths x0 _) = (AntiObjCMeths x0 (fromLoc l))+instance Relocatable Stm where+ reloc l (Label x0 x1 x2 _) = (Label x0 x1 x2 (fromLoc l))+ reloc l (Case x0 x1 _) = (Case x0 x1 (fromLoc l))+ reloc l (CaseRange x0 x1 x2 _) = (CaseRange x0 x1 x2 (fromLoc l))+ reloc l (Default x0 _) = (Default x0 (fromLoc l))+ reloc l (Exp x0 _) = (Exp x0 (fromLoc l))+ reloc l (Block x0 _) = (Block x0 (fromLoc l))+ reloc l (If x0 x1 x2 _) = (If x0 x1 x2 (fromLoc l))+ reloc l (Switch x0 x1 _) = (Switch x0 x1 (fromLoc l))+ reloc l (While x0 x1 _) = (While x0 x1 (fromLoc l))+ reloc l (DoWhile x0 x1 _) = (DoWhile x0 x1 (fromLoc l))+ reloc l (For x0 x1 x2 x3 _) = (For x0 x1 x2 x3 (fromLoc l))+ reloc l (Goto x0 _) = (Goto x0 (fromLoc l))+ reloc l (Continue _) = (Continue (fromLoc l))+ reloc l (Break _) = (Break (fromLoc l))+ reloc l (Return x0 _) = (Return x0 (fromLoc l))+ reloc l (Pragma x0 _) = (Pragma x0 (fromLoc l))+ reloc l (Comment x0 x1 _) = (Comment x0 x1 (fromLoc l))+ reloc l (EscStm x0 _) = (EscStm x0 (fromLoc l))+ reloc l (AntiEscStm x0 _) = (AntiEscStm x0 (fromLoc l))+ reloc l (AntiPragma x0 _) = (AntiPragma x0 (fromLoc l))+ reloc l (AntiComment x0 x1 _) = (AntiComment x0 x1 (fromLoc l))+ reloc l (AntiStm x0 _) = (AntiStm x0 (fromLoc l))+ reloc l (AntiStms x0 _) = (AntiStms x0 (fromLoc l))+ reloc l (Asm x0 x1 x2 x3 x4 x5 _) = (Asm x0 x1 x2 x3 x4 x5 (fromLoc l))+ reloc l (AsmGoto x0 x1 x2 x3 x4 x5 _) =+ (AsmGoto x0 x1 x2 x3 x4 x5 (fromLoc l))+ reloc l (ObjCTry x0 x1 x2 _) = (ObjCTry x0 x1 x2 (fromLoc l))+ reloc l (ObjCThrow x0 _) = (ObjCThrow x0 (fromLoc l))+ reloc l (ObjCSynchronized x0 x1 _) = (ObjCSynchronized x0 x1 (fromLoc l))+ reloc l (ObjCAutoreleasepool x0 _) = (ObjCAutoreleasepool x0 (fromLoc l))+instance Relocatable BlockItem where+ reloc _ (BlockDecl x0) = (BlockDecl x0)+ reloc _ (BlockStm x0) = (BlockStm x0)+ reloc l (AntiBlockItem x0 _) = (AntiBlockItem x0 (fromLoc l))+ reloc l (AntiBlockItems x0 _) = (AntiBlockItems x0 (fromLoc l))+instance Relocatable Const where+ reloc l (IntConst x0 x1 x2 _) = (IntConst x0 x1 x2 (fromLoc l))+ reloc l (LongIntConst x0 x1 x2 _) = (LongIntConst x0 x1 x2 (fromLoc l))+ reloc l (LongLongIntConst x0 x1 x2 _) =+ (LongLongIntConst x0 x1 x2 (fromLoc l))+ reloc l (FloatConst x0 x1 _) = (FloatConst x0 x1 (fromLoc l))+ reloc l (DoubleConst x0 x1 _) = (DoubleConst x0 x1 (fromLoc l))+ reloc l (LongDoubleConst x0 x1 _) = (LongDoubleConst x0 x1 (fromLoc l))+ reloc l (CharConst x0 x1 _) = (CharConst x0 x1 (fromLoc l))+ reloc l (StringConst x0 x1 _) = (StringConst x0 x1 (fromLoc l))+ reloc l (AntiConst x0 _) = (AntiConst x0 (fromLoc l))+ reloc l (AntiInt x0 _) = (AntiInt x0 (fromLoc l))+ reloc l (AntiUInt x0 _) = (AntiUInt x0 (fromLoc l))+ reloc l (AntiLInt x0 _) = (AntiLInt x0 (fromLoc l))+ reloc l (AntiULInt x0 _) = (AntiULInt x0 (fromLoc l))+ reloc l (AntiLLInt x0 _) = (AntiLLInt x0 (fromLoc l))+ reloc l (AntiULLInt x0 _) = (AntiULLInt x0 (fromLoc l))+ reloc l (AntiFloat x0 _) = (AntiFloat x0 (fromLoc l))+ reloc l (AntiDouble x0 _) = (AntiDouble x0 (fromLoc l))+ reloc l (AntiLongDouble x0 _) = (AntiLongDouble x0 (fromLoc l))+ reloc l (AntiChar x0 _) = (AntiChar x0 (fromLoc l))+ reloc l (AntiString x0 _) = (AntiString x0 (fromLoc l))+instance Relocatable Exp where+ reloc l (Var x0 _) = (Var x0 (fromLoc l))+ reloc l (Const x0 _) = (Const x0 (fromLoc l))+ reloc l (BinOp x0 x1 x2 _) = (BinOp x0 x1 x2 (fromLoc l))+ reloc l (Assign x0 x1 x2 _) = (Assign x0 x1 x2 (fromLoc l))+ reloc l (PreInc x0 _) = (PreInc x0 (fromLoc l))+ reloc l (PostInc x0 _) = (PostInc x0 (fromLoc l))+ reloc l (PreDec x0 _) = (PreDec x0 (fromLoc l))+ reloc l (PostDec x0 _) = (PostDec x0 (fromLoc l))+ reloc l (UnOp x0 x1 _) = (UnOp x0 x1 (fromLoc l))+ reloc l (SizeofExp x0 _) = (SizeofExp x0 (fromLoc l))+ reloc l (SizeofType x0 _) = (SizeofType x0 (fromLoc l))+ reloc l (Cast x0 x1 _) = (Cast x0 x1 (fromLoc l))+ reloc l (Cond x0 x1 x2 _) = (Cond x0 x1 x2 (fromLoc l))+ reloc l (Member x0 x1 _) = (Member x0 x1 (fromLoc l))+ reloc l (PtrMember x0 x1 _) = (PtrMember x0 x1 (fromLoc l))+ reloc l (Index x0 x1 _) = (Index x0 x1 (fromLoc l))+ reloc l (FnCall x0 x1 _) = (FnCall x0 x1 (fromLoc l))+ reloc l (CudaCall x0 x1 x2 _) = (CudaCall x0 x1 x2 (fromLoc l))+ reloc l (Seq x0 x1 _) = (Seq x0 x1 (fromLoc l))+ reloc l (CompoundLit x0 x1 _) = (CompoundLit x0 x1 (fromLoc l))+ reloc l (StmExpr x0 _) = (StmExpr x0 (fromLoc l))+ reloc l (EscExp x0 _) = (EscExp x0 (fromLoc l))+ reloc l (AntiEscExp x0 _) = (AntiEscExp x0 (fromLoc l))+ reloc l (AntiExp x0 _) = (AntiExp x0 (fromLoc l))+ reloc l (AntiArgs x0 _) = (AntiArgs x0 (fromLoc l))+ reloc l (BuiltinVaArg x0 x1 _) = (BuiltinVaArg x0 x1 (fromLoc l))+ reloc l (BlockLit x0 x1 x2 _) = (BlockLit x0 x1 x2 (fromLoc l))+ reloc l (ObjCMsg x0 x1 x2 _) = (ObjCMsg x0 x1 x2 (fromLoc l))+ reloc l (ObjCLitConst x0 x1 _) = (ObjCLitConst x0 x1 (fromLoc l))+ reloc l (ObjCLitString x0 _) = (ObjCLitString x0 (fromLoc l))+ reloc l (ObjCLitBool x0 _) = (ObjCLitBool x0 (fromLoc l))+ reloc l (ObjCLitArray x0 _) = (ObjCLitArray x0 (fromLoc l))+ reloc l (ObjCLitDict x0 _) = (ObjCLitDict x0 (fromLoc l))+ reloc l (ObjCLitBoxed x0 _) = (ObjCLitBoxed x0 (fromLoc l))+ reloc l (ObjCEncode x0 _) = (ObjCEncode x0 (fromLoc l))+ reloc l (ObjCProtocol x0 _) = (ObjCProtocol x0 (fromLoc l))+ reloc l (ObjCSelector x0 _) = (ObjCSelector x0 (fromLoc l))+ reloc l (Lambda x0 x1 x2 _) = (Lambda x0 x1 x2 (fromLoc l))+instance Relocatable LambdaIntroducer where+ reloc l (LambdaIntroducer x0 _) = (LambdaIntroducer x0 (fromLoc l))+instance Relocatable LambdaDeclarator where+ reloc l (LambdaDeclarator x0 x1 x2 _) =+ (LambdaDeclarator x0 x1 x2 (fromLoc l))+instance Relocatable BlockType where+ reloc l (BlockVoid _) = (BlockVoid (fromLoc l))+ reloc l (BlockParam x0 _) = (BlockParam x0 (fromLoc l))+ reloc l (BlockType x0 _) = (BlockType x0 (fromLoc l))+instance Relocatable ExeConfig where+ reloc l (ExeConfig x0 x1 x2 x3 _) = (ExeConfig x0 x1 x2 x3 (fromLoc l))+instance Relocatable ObjCIvarDecl where+ reloc l (ObjCIvarVisi x0 _) = (ObjCIvarVisi x0 (fromLoc l))+ reloc l (ObjCIvarDecl x0 _) = (ObjCIvarDecl x0 (fromLoc l))+instance Relocatable ObjCVisibilitySpec where+ reloc l (ObjCPrivate _) = (ObjCPrivate (fromLoc l))+ reloc l (ObjCPublic _) = (ObjCPublic (fromLoc l))+ reloc l (ObjCProtected _) = (ObjCProtected (fromLoc l))+ reloc l (ObjCPackage _) = (ObjCPackage (fromLoc l))+instance Relocatable ObjCIfaceDecl where+ reloc l (ObjCIfaceProp x0 x1 _) = (ObjCIfaceProp x0 x1 (fromLoc l))+ reloc l (ObjCIfaceReq x0 _) = (ObjCIfaceReq x0 (fromLoc l))+ reloc l (ObjCIfaceMeth x0 _) = (ObjCIfaceMeth x0 (fromLoc l))+ reloc l (ObjCIfaceDecl x0 _) = (ObjCIfaceDecl x0 (fromLoc l))+ reloc l (AntiObjCProp x0 _) = (AntiObjCProp x0 (fromLoc l))+ reloc l (AntiObjCProps x0 _) = (AntiObjCProps x0 (fromLoc l))+ reloc l (AntiObjCIfaceDecl x0 _) = (AntiObjCIfaceDecl x0 (fromLoc l))+ reloc l (AntiObjCIfaceDecls x0 _) = (AntiObjCIfaceDecls x0 (fromLoc l))+instance Relocatable ObjCPropAttr where+ reloc l (ObjCGetter x0 _) = (ObjCGetter x0 (fromLoc l))+ reloc l (ObjCSetter x0 _) = (ObjCSetter x0 (fromLoc l))+ reloc l (ObjCReadonly _) = (ObjCReadonly (fromLoc l))+ reloc l (ObjCReadwrite _) = (ObjCReadwrite (fromLoc l))+ reloc l (ObjCAssign _) = (ObjCAssign (fromLoc l))+ reloc l (ObjCRetain _) = (ObjCRetain (fromLoc l))+ reloc l (ObjCCopy _) = (ObjCCopy (fromLoc l))+ reloc l (ObjCNonatomic _) = (ObjCNonatomic (fromLoc l))+ reloc l (ObjCAtomic _) = (ObjCAtomic (fromLoc l))+ reloc l (ObjCStrong _) = (ObjCStrong (fromLoc l))+ reloc l (ObjCWeak _) = (ObjCWeak (fromLoc l))+ reloc l (ObjCUnsafeUnretained _) = (ObjCUnsafeUnretained (fromLoc l))+ reloc l (AntiObjCAttr x0 _) = (AntiObjCAttr x0 (fromLoc l))+ reloc l (AntiObjCAttrs x0 _) = (AntiObjCAttrs x0 (fromLoc l))+instance Relocatable ObjCMethodReq where+ reloc l (ObjCRequired _) = (ObjCRequired (fromLoc l))+ reloc l (ObjCOptional _) = (ObjCOptional (fromLoc l))+instance Relocatable ObjCParam where+ reloc l (ObjCParam x0 x1 x2 x3 _) = (ObjCParam x0 x1 x2 x3 (fromLoc l))+ reloc l (AntiObjCParam x0 _) = (AntiObjCParam x0 (fromLoc l))+ reloc l (AntiObjCParams x0 _) = (AntiObjCParams x0 (fromLoc l))+instance Relocatable ObjCMethodProto where+ reloc l (ObjCMethodProto x0 x1 x2 x3 x4 x5 _) =+ (ObjCMethodProto x0 x1 x2 x3 x4 x5 (fromLoc l))+ reloc l (AntiObjCMethodProto x0 _) = (AntiObjCMethodProto x0 (fromLoc l))+instance Relocatable ObjCCatch where+ reloc l (ObjCCatch x0 x1 _) = (ObjCCatch x0 x1 (fromLoc l))+instance Relocatable ObjCRecv where+ reloc l (ObjCRecvSuper _) = (ObjCRecvSuper (fromLoc l))+ reloc l (ObjCRecvExp x0 _) = (ObjCRecvExp x0 (fromLoc l))+ reloc l (AntiObjCRecv x0 _) = (AntiObjCRecv x0 (fromLoc l))+instance Relocatable ObjCArg where+ reloc l (ObjCArg x0 x1 _) = (ObjCArg x0 x1 (fromLoc l))+ reloc l (AntiObjCArg x0 _) = (AntiObjCArg x0 (fromLoc l))+ reloc l (AntiObjCArgs x0 _) = (AntiObjCArgs x0 (fromLoc l))+instance Relocatable ObjCDictElem where+ reloc l (ObjCDictElem x0 x1 _) = (ObjCDictElem x0 x1 (fromLoc l))+ reloc l (AntiObjCDictElems x0 _) = (AntiObjCDictElems x0 (fromLoc l))
Language/C/Syntax.hs view
@@ -1,11 +1,11 @@ -- | -- Module : Language.C.Syntax--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- (c) Manuel M T Chakravarty 2013--- : (c) Drexel University 2013+-- Copyright : (c) 2006-2011 Harvard University+-- (c) 2011-2013 Geoffrey Mainland+-- (c) 2013 Manuel M T Chakravarty+-- : (c) 2013-2016 Drexel University -- License : BSD-style--- Maintainer : mainland@cs.drexel.edu+-- Maintainer : mainland@drexel.edu {-# LANGUAGE CPP #-} {-# LANGUAGE DeriveDataTypeable #-}@@ -15,6 +15,7 @@ import Data.Data (Data(..)) import Data.Loc+import Data.String (IsString(..)) import Data.Typeable (Typeable) data Extensions = Antiquotation@@ -54,11 +55,17 @@ data TypeQual = Tconst !SrcLoc | Tvolatile !SrcLoc + | EscTypeQual String !SrcLoc++ | AntiTypeQual String !SrcLoc+ | AntiTypeQuals String !SrcLoc+ -- C99 | Tinline !SrcLoc | Trestrict !SrcLoc -- GCC+ | T__restrict !SrcLoc | TAttr Attr -- CUDA@@ -101,9 +108,13 @@ !SrcLoc -- C99- | T_Bool !SrcLoc- | T_Complex !SrcLoc- | T_Imaginary !SrcLoc+ | T_Bool !SrcLoc+ | Tfloat_Complex !SrcLoc+ | Tdouble_Complex !SrcLoc+ | Tlong_double_Complex !SrcLoc+ | Tfloat_Imaginary !SrcLoc+ | Tdouble_Imaginary !SrcLoc+ | Tlong_double_Imaginary !SrcLoc -- Gcc | TtypeofExp Exp !SrcLoc@@ -184,6 +195,8 @@ deriving (Eq, Ord, Show, Data, Typeable) data Attr = Attr Id [Exp] !SrcLoc+ | AntiAttr String !SrcLoc+ | AntiAttrs String !SrcLoc deriving (Eq, Ord, Show, Data, Typeable) data Param = Param (Maybe Id) DeclSpec Decl !SrcLoc@@ -225,6 +238,7 @@ data Stm = Label Id [Attr] Stm !SrcLoc | Case Exp Stm !SrcLoc+ | CaseRange Exp Exp Stm !SrcLoc | Default Stm !SrcLoc | Exp (Maybe Exp) !SrcLoc | Block [BlockItem] !SrcLoc@@ -239,6 +253,8 @@ | Return (Maybe Exp) !SrcLoc | Pragma String !SrcLoc | Comment String Stm !SrcLoc+ | EscStm String !SrcLoc+ | AntiEscStm String !SrcLoc | AntiPragma String !SrcLoc | AntiComment String Stm !SrcLoc | AntiStm String !SrcLoc@@ -283,9 +299,9 @@ data Const = IntConst String Signed Integer !SrcLoc | LongIntConst String Signed Integer !SrcLoc | LongLongIntConst String Signed Integer !SrcLoc- | FloatConst String Rational !SrcLoc- | DoubleConst String Rational !SrcLoc- | LongDoubleConst String Rational !SrcLoc+ | FloatConst String Float !SrcLoc+ | DoubleConst String Double !SrcLoc+ | LongDoubleConst String Double !SrcLoc | CharConst String Char !SrcLoc | StringConst [String] String !SrcLoc @@ -324,6 +340,8 @@ | Seq Exp Exp !SrcLoc | CompoundLit Type [(Maybe Designation, Initializer)] !SrcLoc | StmExpr [BlockItem] !SrcLoc+ | EscExp String !SrcLoc+ | AntiEscExp String !SrcLoc | AntiExp String !SrcLoc | AntiArgs String !SrcLoc @@ -349,6 +367,9 @@ | ObjCEncode Type !SrcLoc | ObjCProtocol Id !SrcLoc | ObjCSelector String !SrcLoc++ -- CUDA: C++11 lambda-expression+ | Lambda LambdaIntroducer (Maybe LambdaDeclarator) [BlockItem] !SrcLoc deriving (Eq, Ord, Show, Data, Typeable) data BinOp = Add@@ -489,8 +510,6 @@ data ObjCRecv = ObjCRecvSuper !SrcLoc | ObjCRecvExp Exp !SrcLoc- | ObjCRecvClassName Id !SrcLoc- | ObjCRecvTypeName Id !SrcLoc | AntiObjCRecv String !SrcLoc deriving (Eq, Ord, Show, Data, Typeable) @@ -505,6 +524,16 @@ - ------------------------------------------------------------------------------} +data LambdaIntroducer = LambdaIntroducer [CaptureListEntry] !SrcLoc+ deriving (Eq, Ord, Show, Data, Typeable)++data LambdaDeclarator = LambdaDeclarator Params Bool (Maybe Type) !SrcLoc+ deriving (Eq, Ord, Show, Data, Typeable)++data CaptureListEntry = DefaultByReference+ | DefaultByValue+ deriving (Eq, Ord, Show, Data, Typeable)+ data ExeConfig = ExeConfig { exeGridDim :: Exp , exeBlockDim :: Exp@@ -520,340 +549,14 @@ - ------------------------------------------------------------------------------} -instance Located Id where- locOf (Id _ loc) = locOf loc- locOf (AntiId _ loc) = locOf loc--instance Located StringLit where- locOf (StringLit _ _ loc) = locOf loc--instance Located Storage where- locOf (Tauto loc) = locOf loc- locOf (Tregister loc) = locOf loc- locOf (Tstatic loc) = locOf loc- locOf (Textern _ loc) = locOf loc- locOf (Ttypedef loc) = locOf loc- locOf (T__block loc) = locOf loc- locOf (TObjC__weak loc) = locOf loc- locOf (TObjC__strong loc) = locOf loc- locOf (TObjC__unsafe_unretained loc) = locOf loc--instance Located TypeQual where- locOf (Tconst loc) = locOf loc- locOf (Tvolatile loc) = locOf loc- locOf (Tinline loc) = locOf loc-- locOf (Trestrict loc) = locOf loc-- locOf (TAttr attr) = locOf attr-- locOf (TCUDAdevice loc) = locOf loc- locOf (TCUDAglobal loc) = locOf loc- locOf (TCUDAhost loc) = locOf loc- locOf (TCUDAconstant loc) = locOf loc- locOf (TCUDAshared loc) = locOf loc- locOf (TCUDArestrict loc) = locOf loc- locOf (TCUDAnoinline loc) = locOf loc-- locOf (TCLprivate loc) = locOf loc- locOf (TCLlocal loc) = locOf loc- locOf (TCLglobal loc) = locOf loc- locOf (TCLconstant loc) = locOf loc- locOf (TCLreadonly loc) = locOf loc- locOf (TCLwriteonly loc) = locOf loc- locOf (TCLkernel loc) = locOf loc--instance Located Sign where- locOf (Tsigned loc) = locOf loc- locOf (Tunsigned loc) = locOf loc--instance Located TypeSpec where- locOf (Tvoid loc) = locOf loc- locOf (Tchar _ loc) = locOf loc- locOf (Tshort _ loc) = locOf loc- locOf (Tint _ loc) = locOf loc- locOf (Tlong _ loc) = locOf loc- locOf (Tlong_long _ loc) = locOf loc- locOf (Tfloat loc) = locOf loc- locOf (Tdouble loc) = locOf loc- locOf (Tlong_double loc) = locOf loc- locOf (Tstruct _ _ _ loc) = locOf loc- locOf (Tunion _ _ _ loc) = locOf loc- locOf (Tenum _ _ _ loc) = locOf loc- locOf (Tnamed _ _ loc) = locOf loc- locOf (TtypeofExp _ loc) = locOf loc- locOf (TtypeofType _ loc) = locOf loc- locOf (T_Bool loc) = locOf loc- locOf (T_Complex loc) = locOf loc- locOf (T_Imaginary loc) = locOf loc- locOf (Tva_list loc) = locOf loc--instance Located DeclSpec where- locOf (DeclSpec _ _ _ loc) = locOf loc- locOf (AntiDeclSpec _ loc) = locOf loc- locOf (AntiTypeDeclSpec _ _ _ loc) = locOf loc--instance Located ArraySize where- locOf (ArraySize _ _ loc) = locOf loc- locOf (VariableArraySize loc) = locOf loc- locOf (NoArraySize loc) = locOf loc--instance Located Decl where- locOf (DeclRoot loc) = locOf loc- locOf (Ptr _ _ loc) = locOf loc- locOf (BlockPtr _ _ loc) = locOf loc- locOf (Array _ _ _ loc) = locOf loc- locOf (Proto _ _ loc) = locOf loc- locOf (OldProto _ _ loc) = locOf loc- locOf (AntiTypeDecl _ loc) = locOf loc--instance Located Type where- locOf (Type _ _ loc) = locOf loc- locOf (AntiType _ loc) = locOf loc--instance Located Designator where- locOf (IndexDesignator _ loc) = locOf loc- locOf (MemberDesignator _ loc) = locOf loc--instance Located Designation where- locOf (Designation _ loc) = locOf loc--instance Located Initializer where- locOf (ExpInitializer _ loc) = locOf loc- locOf (CompoundInitializer _ loc) = locOf loc- locOf (AntiInit _ loc) = locOf loc- locOf (AntiInits _ loc) = locOf loc--instance Located Init where- locOf (Init _ _ _ _ _ loc) = locOf loc--instance Located Typedef where- locOf (Typedef _ _ _ loc) = locOf loc--instance Located InitGroup where- locOf (InitGroup _ _ _ loc) = locOf loc- locOf (TypedefGroup _ _ _ loc) = locOf loc- locOf (AntiDecl _ loc) = locOf loc- locOf (AntiDecls _ loc) = locOf loc--instance Located Field where- locOf (Field _ _ _ loc) = locOf loc--instance Located FieldGroup where- locOf (FieldGroup _ _ loc) = locOf loc- locOf (AntiSdecl _ loc) = locOf loc- locOf (AntiSdecls _ loc) = locOf loc--instance Located CEnum where- locOf (CEnum _ _ loc) = locOf loc- locOf (AntiEnum _ loc) = locOf loc- locOf (AntiEnums _ loc) = locOf loc--instance Located Attr where- locOf (Attr _ _ loc) = locOf loc--instance Located Param where- locOf (Param _ _ _ loc) = locOf loc- locOf (AntiParam _ loc) = locOf loc- locOf (AntiParams _ loc) = locOf loc--instance Located Params where- locOf (Params _ _ loc) = locOf loc--instance Located Func where- locOf (Func _ _ _ _ _ loc) = locOf loc- locOf (OldFunc _ _ _ _ _ _ loc) = locOf loc--instance Located Definition where- locOf (FuncDef _ loc) = locOf loc- locOf (DecDef _ loc) = locOf loc- locOf (EscDef _ loc) = locOf loc- locOf (ObjCClassDec _ loc) = locOf loc- locOf (ObjCClassIface _ _ _ _ _ _ loc) = locOf loc- locOf (ObjCCatIface _ _ _ _ _ loc) = locOf loc- locOf (ObjCProtDec _ loc) = locOf loc- locOf (ObjCProtDef _ _ _ loc) = locOf loc- locOf (ObjCClassImpl _ _ _ _ loc) = locOf loc- locOf (ObjCCatImpl _ _ _ loc) = locOf loc- locOf (ObjCSynDef _ loc) = locOf loc- locOf (ObjCDynDef _ loc) = locOf loc- locOf (ObjCMethDef _ _ loc) = locOf loc- locOf (ObjCCompAlias _ _ loc) = locOf loc- locOf (AntiFunc _ loc) = locOf loc- locOf (AntiEsc _ loc) = locOf loc- locOf (AntiEdecl _ loc) = locOf loc- locOf (AntiEdecls _ loc) = locOf loc- locOf (AntiObjCMeth _ loc) = locOf loc- locOf (AntiObjCMeths _ loc) = locOf loc--instance Located Stm where- locOf (Label _ _ _ loc) = locOf loc- locOf (Case _ _ loc) = locOf loc- locOf (Default _ loc) = locOf loc- locOf (Exp _ loc) = locOf loc- locOf (Block _ loc) = locOf loc- locOf (If _ _ _ loc) = locOf loc- locOf (Switch _ _ loc) = locOf loc- locOf (While _ _ loc) = locOf loc- locOf (DoWhile _ _ loc) = locOf loc- locOf (For _ _ _ _ loc) = locOf loc- locOf (Goto _ loc) = locOf loc- locOf (Continue loc) = locOf loc- locOf (Break loc) = locOf loc- locOf (Return _ loc) = locOf loc- locOf (Pragma _ loc) = locOf loc- locOf (Comment _ _ loc) = locOf loc- locOf (Asm _ _ _ _ _ _ loc) = locOf loc- locOf (AsmGoto _ _ _ _ _ _ loc) = locOf loc- locOf (ObjCTry _ _ _ loc) = locOf loc- locOf (ObjCThrow _ loc) = locOf loc- locOf (ObjCSynchronized _ _ loc) = locOf loc- locOf (ObjCAutoreleasepool _ loc) = locOf loc- locOf (AntiPragma _ loc) = locOf loc- locOf (AntiComment _ _ loc) = locOf loc- locOf (AntiStm _ loc) = locOf loc- locOf (AntiStms _ loc) = locOf loc--instance Located BlockItem where- locOf (BlockDecl decl) = locOf decl- locOf (BlockStm stm) = locOf stm- locOf (AntiBlockItem _ loc) = locOf loc- locOf (AntiBlockItems _ loc) = locOf loc--instance Located Const where- locOf (IntConst _ _ _ loc) = locOf loc- locOf (LongIntConst _ _ _ loc) = locOf loc- locOf (LongLongIntConst _ _ _ loc) = locOf loc- locOf (FloatConst _ _ loc) = locOf loc- locOf (DoubleConst _ _ loc) = locOf loc- locOf (LongDoubleConst _ _ loc) = locOf loc- locOf (CharConst _ _ loc) = locOf loc- locOf (StringConst _ _ loc) = locOf loc- locOf (AntiConst _ loc) = locOf loc- locOf (AntiInt _ loc) = locOf loc- locOf (AntiUInt _ loc) = locOf loc- locOf (AntiLInt _ loc) = locOf loc- locOf (AntiULInt _ loc) = locOf loc- locOf (AntiLLInt _ loc) = locOf loc- locOf (AntiULLInt _ loc) = locOf loc- locOf (AntiFloat _ loc) = locOf loc- locOf (AntiDouble _ loc) = locOf loc- locOf (AntiLongDouble _ loc) = locOf loc- locOf (AntiChar _ loc) = locOf loc- locOf (AntiString _ loc) = locOf loc--instance Located Exp where- locOf (Var _ loc) = locOf loc- locOf (Const _ loc) = locOf loc- locOf (BinOp _ _ _ loc) = locOf loc- locOf (Assign _ _ _ loc) = locOf loc- locOf (PreInc _ loc) = locOf loc- locOf (PostInc _ loc) = locOf loc- locOf (PreDec _ loc) = locOf loc- locOf (PostDec _ loc) = locOf loc- locOf (UnOp _ _ loc) = locOf loc- locOf (SizeofExp _ loc) = locOf loc- locOf (SizeofType _ loc) = locOf loc- locOf (Cast _ _ loc) = locOf loc- locOf (Cond _ _ _ loc) = locOf loc- locOf (Member _ _ loc) = locOf loc- locOf (PtrMember _ _ loc) = locOf loc- locOf (Index _ _ loc) = locOf loc- locOf (FnCall _ _ loc) = locOf loc- locOf (CudaCall _ _ _ loc) = locOf loc- locOf (Seq _ _ loc) = locOf loc- locOf (CompoundLit _ _ loc) = locOf loc- locOf (StmExpr _ loc) = locOf loc- locOf (BuiltinVaArg _ _ loc) = locOf loc- locOf (BlockLit _ _ _ loc) = locOf loc- locOf (ObjCMsg _ _ _ loc) = locOf loc- locOf (ObjCLitConst _ _ loc) = locOf loc- locOf (ObjCLitString _ loc) = locOf loc- locOf (ObjCLitBool _ loc) = locOf loc- locOf (ObjCLitArray _ loc) = locOf loc- locOf (ObjCLitDict _ loc) = locOf loc- locOf (ObjCLitBoxed _ loc) = locOf loc- locOf (ObjCEncode _ loc) = locOf loc- locOf (ObjCProtocol _ loc) = locOf loc- locOf (ObjCSelector _ loc) = locOf loc- locOf (AntiExp _ loc) = locOf loc- locOf (AntiArgs _ loc) = locOf loc--instance Located BlockType where- locOf (BlockVoid loc) = locOf loc- locOf (BlockParam _ loc) = locOf loc- locOf (BlockType _ loc) = locOf loc--instance Located ExeConfig where- locOf conf = locOf (exeLoc conf)--instance Located ObjCIvarDecl where- locOf (ObjCIvarVisi _ loc) = locOf loc- locOf (ObjCIvarDecl _ loc) = locOf loc--instance Located ObjCVisibilitySpec where- locOf (ObjCPrivate loc) = locOf loc- locOf (ObjCPublic loc) = locOf loc- locOf (ObjCProtected loc) = locOf loc- locOf (ObjCPackage loc) = locOf loc--instance Located ObjCIfaceDecl where- locOf (ObjCIfaceProp _ _ loc) = locOf loc- locOf (ObjCIfaceReq _ loc) = locOf loc- locOf (ObjCIfaceMeth _ loc) = locOf loc- locOf (ObjCIfaceDecl _ loc) = locOf loc- locOf (AntiObjCIfaceDecl _ loc) = locOf loc- locOf (AntiObjCIfaceDecls _ loc) = locOf loc- locOf (AntiObjCProp _ loc) = locOf loc- locOf (AntiObjCProps _ loc) = locOf loc--instance Located ObjCPropAttr where- locOf (ObjCGetter _ loc) = locOf loc- locOf (ObjCSetter _ loc) = locOf loc- locOf (ObjCReadonly loc) = locOf loc- locOf (ObjCReadwrite loc) = locOf loc- locOf (ObjCAssign loc) = locOf loc- locOf (ObjCRetain loc) = locOf loc- locOf (ObjCCopy loc) = locOf loc- locOf (ObjCNonatomic loc) = locOf loc- locOf (ObjCAtomic loc) = locOf loc- locOf (ObjCStrong loc) = locOf loc- locOf (ObjCWeak loc) = locOf loc- locOf (ObjCUnsafeUnretained loc) = locOf loc- locOf (AntiObjCAttr _ loc) = locOf loc- locOf (AntiObjCAttrs _ loc) = locOf loc--instance Located ObjCMethodReq where- locOf (ObjCRequired loc) = locOf loc- locOf (ObjCOptional loc) = locOf loc--instance Located ObjCParam where- locOf (ObjCParam _ _ _ _ loc) = locOf loc- locOf (AntiObjCParam _ loc) = locOf loc- locOf (AntiObjCParams _ loc) = locOf loc--instance Located ObjCMethodProto where- locOf (ObjCMethodProto _ _ _ _ _ _ loc) = locOf loc- locOf (AntiObjCMethodProto _ loc) = locOf loc--instance Located ObjCCatch where- locOf (ObjCCatch _ _ loc) = locOf loc--instance Located ObjCRecv where- locOf (ObjCRecvSuper loc) = locOf loc- locOf (ObjCRecvExp _ loc) = locOf loc- locOf (ObjCRecvClassName _ loc) = locOf loc- locOf (ObjCRecvTypeName _ loc) = locOf loc- locOf (AntiObjCRecv _ loc) = locOf loc+instance IsString Id where+ fromString s = Id s noLoc -instance Located ObjCArg where- locOf (ObjCArg _ _ loc) = locOf loc- locOf (AntiObjCArg _ loc) = locOf loc- locOf (AntiObjCArgs _ loc) = locOf loc+instance IsString StringLit where+ fromString s = StringLit [s] s noLoc -instance Located ObjCDictElem where- locOf (ObjCDictElem _ _ loc) = locOf loc- locOf (AntiObjCDictElems _ loc) = locOf loc+#if !defined(ONLY_TYPEDEFS)+#include "Language/C/Syntax-instances.hs" {------------------------------------------------------------------------------ -@@ -901,3 +604,4 @@ ctypedefGroup :: DeclSpec -> [Attr] -> [Typedef] -> InitGroup ctypedefGroup dspec attrs typedefs = TypedefGroup dspec attrs typedefs (dspec `srcspan` attrs `srcspan` typedefs)+#endif /* !defined(ONLY_TYPEDEFS) */
− dist/build/Language/C/Parser/Lexer.hs
@@ -1,836 +0,0 @@-{-# LANGUAGE CPP,MagicHash #-}-{-# LINE 3 "Language/C/Parser/Lexer.x" #-}--{-# OPTIONS -w #-}-{-# LANGUAGE CPP #-}---- |--- Module : Language.C.Parser.Lexer--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2013--- (c) Drexel University 2013--- License : BSD-style--- Maintainer : mainland@cs.drexel.edu--module Language.C.Parser.Lexer (- lexToken- ) where--import Control.Applicative-import Control.Monad (when)-import Control.Monad.Error-import Control.Monad.Exception-import Control.Monad.Identity-import Control.Monad.State-import Control.Monad.Trans-import qualified Data.ByteString.Char8 as B-import Data.Char (isAlphaNum,- isDigit,- isOctDigit,- isHexDigit,- isLower,- isSpace,- chr,- toLower)-import Data.List (foldl',- intersperse,- isPrefixOf)-import Data.Loc-import qualified Data.Map as Map-import Data.Ratio ((%))-import qualified Data.Set as Set-import Data.Symbol-import Data.Maybe (fromMaybe)-import Text.PrettyPrint.Mainland--import qualified Language.C.Syntax as C-import Language.C.Parser.Monad-import Language.C.Parser.Tokens--#if __GLASGOW_HASKELL__ >= 603-#include "ghcconfig.h"-#elif defined(__GLASGOW_HASKELL__)-#include "config.h"-#endif-#if __GLASGOW_HASKELL__ >= 503-import Data.Array-import Data.Char (ord)-import Data.Array.Base (unsafeAt)-#else-import Array-import Char (ord)-#endif-#if __GLASGOW_HASKELL__ >= 503-import GHC.Exts-#else-import GlaExts-#endif-alex_base :: AlexAddr-alex_base = AlexA# "\xf8\xff\xff\xff\x6e\x00\x00\x00\x52\x00\x00\x00\xdc\xff\xff\xff\x28\x01\x00\x00\xdd\xff\xff\xff\xfe\x01\x00\x00\xa3\xff\xff\xff\xa4\xff\xff\xff\xa6\xff\xff\xff\xa7\xff\xff\xff\x9b\xff\xff\xff\xa2\xff\xff\xff\xad\xff\xff\xff\xa5\xff\xff\xff\x10\x00\x00\x00\x98\xff\xff\xff\xb0\xff\xff\xff\xa8\xff\xff\xff\xb3\xff\xff\xff\xe1\xff\xff\xff\xa9\xff\xff\xff\xe9\xff\xff\xff\x17\x00\x00\x00\x7e\x02\x00\x00\xfe\x02\x00\x00\x7e\x03\x00\x00\xfe\x03\x00\x00\x7e\x04\x00\x00\xb6\xff\xff\xff\xfe\x04\x00\x00\x7e\x05\x00\x00\xfe\x05\x00\x00\x7e\x06\x00\x00\xfe\x06\x00\x00\x7a\x00\x00\x00\x7e\x07\x00\x00\x7f\x00\x00\x00\x0c\x00\x00\x00\x1f\x00\x00\x00\x2c\x00\x00\x00\x28\x00\x00\x00\x2d\x00\x00\x00\x2e\x00\x00\x00\x1d\x00\x00\x00\x30\x00\x00\x00\x2f\x00\x00\x00\x31\x00\x00\x00\x34\x00\x00\x00\x2a\x00\x00\x00\x35\x00\x00\x00\x38\x00\x00\x00\x33\x00\x00\x00\x3a\x00\x00\x00\x37\x00\x00\x00\x3b\x00\x00\x00\xfe\x07\x00\x00\x7e\x08\x00\x00\x98\x00\x00\x00\xfe\x08\x00\x00\x7e\x09\x00\x00\xfe\x09\x00\x00\x4f\x01\x00\x00\x7e\x0a\x00\x00\xfe\x0a\x00\x00\x39\x00\x00\x00\x7e\x0b\x00\x00\xfe\x0b\x00\x00\x7e\x0c\x00\x00\xfe\x0c\x00\x00\x7e\x0d\x00\x00\xfe\x0d\x00\x00\x3f\x00\x00\x00\x46\x00\x00\x00\x44\x00\x00\x00\x43\x00\x00\x00\x48\x00\x00\x00\x45\x00\x00\x00\x4a\x00\x00\x00\x49\x00\x00\x00\x51\x00\x00\x00\x54\x00\x00\x00\x56\x00\x00\x00\x36\x00\x00\x00\x57\x00\x00\x00\x58\x00\x00\x00\x5a\x00\x00\x00\x53\x00\x00\x00\x5c\x00\x00\x00\x62\x00\x00\x00\x7e\x0e\x00\x00\xfe\x0e\x00\x00\x50\x00\x00\x00\x7e\x0f\x00\x00\xfe\x0f\x00\x00\x7e\x10\x00\x00\x4f\x00\x00\x00\xde\x00\x00\x00\x59\x00\x00\x00\xf3\x00\x00\x00\x4e\x00\x00\x00\x66\x00\x00\x00\xfe\x10\x00\x00\x7e\x11\x00\x00\xfe\x11\x00\x00\xe6\x00\x00\x00\xf1\x00\x00\x00\xf8\x00\x00\x00\xfb\x00\x00\x00\xeb\x00\x00\x00\xee\x00\x00\x00\xed\x00\x00\x00\x00\x00\x00\x00\x6f\x12\x00\x00\x00\x00\x00\x00\xe0\x12\x00\x00\x00\x00\x00\x00\x51\x13\x00\x00\xfa\x00\x00\x00\xf7\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x6f\x01\x00\x00\x00\x00\x00\x00\x92\x13\x00\x00\x00\x00\x00\x00\xd3\x13\x00\x00\xca\x14\x00\x00\x00\x00\x00\x00\xac\x14\x00\x00\x5d\x01\x00\x00\x00\x00\x00\x00\x1d\x15\x00\x00\x07\x01\x00\x00\xfc\x00\x00\x00\xf9\x00\x00\x00\x17\x01\x00\x00\xfe\x00\x00\x00\xff\x00\x00\x00\x04\x01\x00\x00\x10\x01\x00\x00\x12\x01\x00\x00\x08\x01\x00\x00\x1d\x16\x00\x00\xdd\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x16\x00\x00\x4e\x17\x00\x00\x0e\x17\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7f\x17\x00\x00\x00\x00\x00\x00\xf0\x17\x00\x00\x00\x00\x00\x00\x61\x18\x00\x00\x00\x00\x00\x00\xd2\x18\x00\x00\xd2\x19\x00\x00\x92\x19\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x1a\x00\x00\x00\x00\x00\x00\x74\x1a\x00\x00\x00\x00\x00\x00\xe5\x1a\x00\x00\x00\x00\x00\x00\x26\x1b\x00\x00\x00\x00\x00\x00\x97\x1b\x00\x00\x00\x00\x00\x00\x08\x1c\x00\x00\x00\x00\x00\x00\x49\x1c\x00\x00\x00\x00\x00\x00\xba\x1c\x00\x00\x09\x01\x00\x00\x05\x01\x00\x00\x06\x01\x00\x00\x0e\x01\x00\x00\x27\x01\x00\x00\x1c\x01\x00\x00\x74\x14\x00\x00\x1e\x01\x00\x00\x2c\x01\x00\x00\x2d\x01\x00\x00\x2e\x01\x00\x00\x2f\x01\x00\x00\x30\x01\x00\x00\x31\x01\x00\x00\x32\x01\x00\x00\x90\x1d\x00\x00\x00\x00\x00\x00\xfc\x1c\x00\x00\x66\x1e\x00\x00\x00\x00\x00\x00\xd2\x1d\x00\x00\x00\x00\x00\x00\xa7\x1e\x00\x00\x00\x00\x00\x00\xe8\x1e\x00\x00\x00\x00\x00\x00\x29\x1f\x00\x00\xff\x1f\x00\x00\x00\x00\x00\x00\x6b\x1f\x00\x00\x00\x00\x00\x00\x40\x20\x00\x00\x00\x00\x00\x00\x81\x20\x00\x00\x81\x21\x00\x00\xd0\x14\x00\x00\x41\x21\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x82\x21\x00\x00\x00\x00\x00\x00\xc3\x21\x00\x00\xc3\x22\x00\x00\xea\x14\x00\x00\x83\x22\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc4\x22\x00\x00\x24\x01\x00\x00\x18\x01\x00\x00\x33\x01\x00\x00\x34\x01\x00\x00\x35\x01\x00\x00\xb5\x01\x00\x00\xb6\x01\x00\x00\x36\x01\x00\x00\x37\x01\x00\x00\x3a\x01\x00\x00\xbb\x01\x00\x00\xba\x01\x00\x00\xfb\x01\x00\x00\xfc\x01\x00\x00\xfd\x01\x00\x00\xff\x01\x00\x00\x00\x02\x00\x00\x01\x02\x00\x00\x09\x02\x00\x00\x02\x02\x00\x00\x7a\x14\x00\x00\xc4\x23\x00\x00\x84\x23\x00\x00\x00\x00\x00\x00\x84\x24\x00\x00\x44\x24\x00\x00\x00\x00\x00\x00\x79\x01\x00\x00\x14\x25\x00\x00\xde\x14\x00\x00\xe8\x14\x00\x00\x2d\x25\x00\x00\x93\x25\x00\x00\x53\x25\x00\x00\x00\x00\x00\x00\x53\x26\x00\x00\x13\x26\x00\x00\x00\x00\x00\x00\x13\x27\x00\x00\xd3\x26\x00\x00\x00\x00\x00\x00\xd3\x27\x00\x00\x93\x27\x00\x00\x00\x00\x00\x00\x93\x28\x00\x00\x53\x28\x00\x00\x00\x00\x00\x00\x53\x29\x00\x00\x13\x29\x00\x00\x00\x00\x00\x00\x13\x2a\x00\x00\x89\x2a\x00\x00\xec\x29\x00\x00\x00\x00\x00\x00\x89\x2b\x00\x00\x49\x2b\x00\x00\x00\x00\x00\x00\x49\x2c\x00\x00\xbf\x2c\x00\x00\x22\x2c\x00\x00\x00\x00\x00\x00\x3d\x02\x00\x00\xaf\x14\x00\x00\x3e\x02\x00\x00\x3f\x02\x00\x00\xb1\x14\x00\x00\x40\x02\x00\x00\x41\x02\x00\x00\xb3\x14\x00\x00\x42\x02\x00\x00\xa5\x14\x00\x00\xb5\x14\x00\x00\xa7\x14\x00\x00\x1a\x25\x00\x00\xa9\x14\x00\x00\xb7\x14\x00\x00\xaa\x14\x00\x00\xbe\x14\x00\x00\xab\x14\x00\x00\xbf\x14\x00\x00\xcb\x14\x00\x00\x15\x25\x00\x00\xcc\x14\x00\x00\xcd\x14\x00\x00\xce\x14\x00\x00\x16\x25\x00\x00\xd3\x14\x00\x00\x17\x25\x00\x00\xe9\x14\x00\x00\x18\x25\x00\x00\xeb\x14\x00\x00\xed\x14\x00\x00\x19\x25\x00\x00\xef\x14\x00\x00\x85\x2d\x00\x00\xf1\x14\x00\x00\x86\x2d\x00\x00\xf2\x14\x00\x00\xf3\x14\x00\x00\xf4\x14\x00\x00\xf5\x14\x00\x00\xf6\x14\x00\x00\xf8\x14\x00\x00\xf9\x14\x00\x00\xfa\x14\x00\x00\xfb\x14\x00\x00\xfc\x14\x00\x00\xfd\x14\x00\x00\xfe\x14\x00\x00\xff\x14\x00\x00\xc2\x1d\x00\x00\xc3\x1d\x00\x00\xc4\x1d\x00\x00\x9b\x2d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x33\x2a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb7\x2d\x00\x00\xad\x2e\x00\x00\xa3\x2f\x00\x00\x99\x30\x00\x00\x8f\x31\x00\x00\x86\x32\x00\x00\x7c\x33\x00\x00\x00\x00\x00\x00\x73\x34\x00\x00\x69\x35\x00\x00\x60\x36\x00\x00\x57\x37\x00\x00\x4d\x38\x00\x00\x43\x39\x00\x00\x3a\x3a\x00\x00\x31\x3b\x00\x00\x27\x3c\x00\x00\x1d\x3d\x00\x00\x13\x3e\x00\x00\x09\x3f\x00\x00\xff\x3f\x00\x00\xf5\x40\x00\x00\xec\x41\x00\x00\xe3\x42\x00\x00\xda\x43\x00\x00\xd1\x44\x00\x00\xc7\x45\x00\x00\xbd\x46\x00\x00\x5e\x25\x00\x00\x88\x2e\x00\x00\x7e\x2f\x00\x00\x74\x30\x00\x00\x6a\x31\x00\x00\x66\x32\x00\x00\x57\x33\x00\x00\x53\x34\x00\x00\x44\x35\x00\x00\x28\x38\x00\x00\x1e\x39\x00\x00\x1a\x3a\x00\x00\x11\x3b\x00\x00\x02\x3c\x00\x00\xf8\x3c\x00\x00\xee\x3d\x00\x00\xe4\x3e\x00\x00\xda\x3f\x00\x00\xd0\x40\x00\x00\xbc\x43\x00\x00\xb3\x44\x00\x00\xa9\x45\x00\x00\x00\x00\x00\x00\x3e\x36\x00\x00\x35\x37\x00\x00\xf9\x24\x00\x00\x00\x00\x00\x00\xb7\x2e\x00\x00\x10\x25\x00\x00\x23\x25\x00\x00\xe1\x41\x00\x00\x1b\x25\x00\x00\x00\x00\x00\x00\xad\x2f\x00\x00\x25\x25\x00\x00\x8a\x2d\x00\x00\xd8\x42\x00\x00\x9b\x46\x00\x00\x82\x2d\x00\x00\x00\x00\x00\x00\xa3\x30\x00\x00\x8f\x2d\x00\x00\xca\x2d\x00\x00\x61\x37\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfb\x2e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf1\x2f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd1\x1d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa8\x1e\x00\x00\xa5\x1e\x00\x00\xc7\x14\x00\x00\x41\x20\x00\x00\xce\x1d\x00\x00\x00\x00\x00\x00\x46\x25\x00\x00\x9c\x2d\x00\x00\xcf\x1d\x00\x00\x98\x1e\x00\x00\xd0\x1d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x1e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x1e\x00\x00\x9c\x1e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9e\x1e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb3\x47\x00\x00\x00\x00\x00\x00\xa9\x48\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#--alex_table :: AlexAddr-alex_table = AlexA# "\x00\x00\xa5\x01\xa5\x01\xa5\x01\xa5\x01\xa5\x01\xc4\x00\xc1\x00\x49\x01\x48\x01\x44\x01\x01\x02\x03\x02\x46\x01\x43\x01\x3e\x01\x3c\x01\x35\x01\x39\x01\x34\x01\x31\x01\x33\x01\x26\x01\x01\x00\xa5\x01\xed\x01\xd2\x01\x98\x01\x79\x01\xe4\x01\xe6\x01\xd1\x01\xd3\x01\xd4\x01\xe2\x01\xe0\x01\xd9\x01\xe1\x01\xdd\x01\xe3\x01\xca\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xdb\x01\xda\x01\xf2\x01\xf6\x01\xf3\x01\xdc\x01\x05\x02\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xd5\x01\x27\x01\xd6\x01\xe8\x01\xb3\x01\x24\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb0\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xd7\x01\xe7\x01\xd8\x01\xe5\x01\x8e\x01\x8e\x01\x8e\x01\x8e\x01\x8e\x01\x02\x00\x37\x01\x20\x01\xf5\x00\xee\x00\x90\x01\x4e\x00\x23\x00\x23\x00\x23\x00\x23\x00\x23\x00\x25\x00\x25\x00\x25\x00\x25\x00\x25\x00\xed\x00\x8e\x01\x0b\x00\xeb\x00\xea\x00\x0c\x00\xe9\x00\x0e\x00\x12\x00\x11\x00\x13\x00\xe6\x00\x53\x00\x23\x00\x15\x00\xe3\x00\x31\x00\xe2\x00\x25\x00\x14\x00\xdd\x00\xdd\x00\xdd\x00\xdd\x00\xdd\x00\x1d\x00\xe5\x00\xc0\x00\x03\x00\x69\x00\x4a\x00\xbd\x00\xbe\x00\x05\x00\xbf\x00\x4c\x00\xbc\x00\x4b\x00\xb9\x00\x27\x00\x4d\x00\x2a\x00\x41\x00\xdd\x00\x2b\x00\x6c\x00\x2d\x00\xb5\x00\x32\x00\xb7\x00\x34\x00\x60\x00\x37\x00\xb3\x00\xb2\x00\x8d\x00\x59\x00\x54\x00\x5c\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x9f\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa0\x00\x5d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7e\x00\x66\x00\x74\x00\x74\x00\x74\x00\x75\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x04\x00\x8c\x00\x86\x00\x61\x00\x77\x00\x02\x02\xd5\x00\xd5\x00\xd5\x00\xd5\x00\xd5\x00\x6f\x00\x6d\x00\x6a\x00\x65\x00\x76\x00\x85\x00\x56\x00\x55\x00\x57\x00\x82\x00\x82\x00\x82\x00\x82\x00\x82\x00\x36\x00\x28\x00\xb4\x00\x35\x00\xd5\x00\x30\x00\x29\x00\xba\x00\x8e\x00\xbb\x00\x62\x00\x26\x00\x63\x00\x89\x00\x16\x00\xe4\x00\x17\x00\xe8\x00\x82\x00\x23\x01\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x33\x00\x0a\x00\x51\x00\x09\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x2f\x00\x08\x00\x07\x00\x21\x01\x0f\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\x2d\x01\x3b\x01\x40\x01\x2b\x01\x29\x01\x42\x01\xdf\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x94\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x95\x00\x5e\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7c\x00\x67\x00\x72\x00\x72\x00\x72\x00\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\x2f\x01\x30\x01\x45\x01\x47\x01\x04\x02\x90\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4a\x01\x4b\x01\x4c\x01\xe7\x00\x4d\x01\x4e\x01\x4f\x01\x51\x01\x88\x01\x86\x01\x85\x01\x83\x01\x82\x01\x80\x01\x50\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8f\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x90\x00\x5f\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x7a\x00\x68\x00\x70\x00\x70\x00\x70\x00\x71\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1b\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x18\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x14\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x11\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x0e\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x0b\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x08\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x05\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\xfa\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xf7\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\x18\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xdc\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\x19\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\x1a\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd4\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\x1b\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\x1c\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\x1e\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\x1f\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\x20\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\x22\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\x24\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\x39\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\x3d\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\x9f\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\x94\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x8f\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x5d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x5e\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x5f\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x95\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa0\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7f\x00\x7f\x00\x7f\x00\x7f\x00\x7f\x00\x52\x00\xd5\x00\xd5\x00\xd5\x00\xd5\x00\xd5\x00\x52\x01\x7f\x01\x78\x00\x7d\x01\x2c\x00\x7b\x01\x78\x01\x76\x01\x00\x00\x0d\x00\xf4\x00\x87\x01\x7f\x00\x84\x01\xec\x00\x81\x01\x2e\x00\x7e\x01\xd5\x00\x7a\x01\x15\x01\xdd\x00\xdd\x00\xdd\x00\xdd\x00\xdd\x00\x77\x01\x75\x01\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\x3e\x00\xf9\x01\x74\x01\x72\x01\x71\x01\x70\x01\x00\x01\xdd\x00\x00\x01\x1c\x01\x6e\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\x1f\x01\x6c\x01\x22\x01\x6a\x01\x25\x01\x69\x01\x28\x01\x67\x01\x2c\x01\x65\x01\x63\x01\x62\x01\x61\x01\x60\x01\x5f\x01\x2e\x01\x5e\x01\x5d\x01\x5c\x01\x5b\x01\x5a\x01\x59\x01\x58\x01\x57\x01\x6e\x00\xa9\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xaf\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xc3\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xc6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xc8\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xca\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xcc\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xcf\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd1\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd3\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd9\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xdb\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xde\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xe1\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x06\x00\xf8\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x56\x01\x55\x01\x54\x01\xfd\x00\x00\x00\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xfb\x01\xfe\x01\x00\x02\x07\x02\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8f\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x91\x00\x90\x00\x5f\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x79\x00\x7a\x00\x68\x00\x70\x00\x70\x00\x70\x00\x71\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x04\x00\xfb\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xec\x01\xeb\x01\x06\x02\xff\x01\xf1\x01\xe9\x01\xf4\x01\xf5\x01\xea\x01\xf0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf8\x01\xde\x01\x00\x00\xf7\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x94\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x96\x00\x95\x00\x5e\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7b\x00\x7c\x00\x67\x00\x72\x00\x72\x00\x72\x00\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x03\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x06\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x00\x0c\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xcd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8f\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfa\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x9f\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa1\x00\xa0\x00\x5d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7d\x00\x7e\x00\x66\x00\x74\x00\x74\x00\x74\x00\x75\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0f\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x12\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x16\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x19\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1d\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xbf\x01\x73\x01\x6f\x01\x6d\x01\x6b\x01\x68\x01\x7c\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xbc\x01\xc2\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\x01\xa5\x01\xa5\x01\xa5\x01\xa5\x01\xa5\x01\xee\x01\x00\x00\xbf\x01\xbf\x01\xc5\x01\xc8\x01\xff\x00\x00\x00\x00\x00\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\x87\x00\xc2\x01\x00\x00\xa5\x01\x00\x00\x00\x00\x98\x01\x00\x00\xfc\x01\x00\x00\x00\x00\x00\x00\x00\x00\x32\x01\x36\x01\x38\x01\x3a\x01\x3d\x01\x2a\x01\x00\x00\xbf\x01\xc5\x01\xc8\x01\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8a\x00\x00\x00\x8b\x00\x50\x00\xb8\x00\x4f\x00\x00\x00\x00\x00\xf6\x00\x00\x00\x64\x00\x49\x00\x6b\x00\x00\x00\x00\x00\x88\x00\x00\x00\x58\x00\xb6\x00\x10\x00\x48\x00\x00\x00\x00\x00\x8b\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xd4\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd7\x00\xd6\x00\x3d\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa8\x00\xa9\x00\x5b\x00\x80\x00\x80\x00\x80\x00\x81\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x89\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xdc\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xdf\x00\xde\x00\x39\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xae\x00\xaf\x00\x5a\x00\x83\x00\x83\x00\x83\x00\x84\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x66\x01\x64\x01\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\xc5\x01\xcc\x01\x00\x00\xfd\x01\x00\x00\xcf\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xc5\x01\xcc\x01\x3f\x01\x41\x01\xb4\x01\xcf\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xcc\x01\x00\x00\xef\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1b\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1e\x01\x1d\x01\x18\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe0\x00\xe1\x00\x38\x00\xb0\x00\xb0\x00\xb0\x00\xb1\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xbe\x01\x23\x00\x23\x00\x23\x00\x23\x00\x23\x00\x00\x00\x00\x00\x00\x00\xbf\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbe\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\xbf\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x1a\x01\x19\x01\x19\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xda\x00\xdb\x00\x3b\x00\xac\x00\xac\x00\xac\x00\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x53\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xc4\x01\x25\x00\x25\x00\x25\x00\x25\x00\x25\x00\x00\x00\x00\x00\x00\x00\xc5\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x25\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x00\x00\x00\xc5\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x14\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x17\x01\x16\x01\x1a\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd8\x00\xd9\x00\x3c\x00\xaa\x00\xaa\x00\xaa\x00\xab\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xa6\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xcb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x11\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x13\x01\x12\x01\x1b\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd2\x00\xd3\x00\x3f\x00\xa6\x00\xa6\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xa7\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0e\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x0f\x01\x1c\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd1\x00\x40\x00\xa4\x00\xa4\x00\xa4\x00\xa5\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x01\x8e\x01\x8e\x01\x8e\x01\x8e\x01\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8e\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xa8\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0e\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x10\x01\x0f\x01\x1c\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd0\x00\xd1\x00\x40\x00\xa4\x00\xa4\x00\xa4\x00\xa5\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xa9\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0b\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0d\x01\x0c\x01\x1e\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xce\x00\xcf\x00\x42\x00\xa2\x00\xa2\x00\xa2\x00\xa3\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x01\x8e\x01\x8e\x01\x8e\x01\x8e\x01\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8e\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xba\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb9\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x91\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa2\x01\xdd\x00\xa2\x01\xa2\x01\xa2\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\xbc\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x01\x00\x00\x00\x00\xff\x00\xbb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\xbb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa1\x01\xd5\x00\xa1\x01\xa1\x01\xa1\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\xbd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x01\x00\x00\x00\x00\x00\x00\xbb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xbb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbb\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xce\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\xd0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xce\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xac\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x92\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xae\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa0\x01\x82\x00\xa0\x01\xa0\x01\xa0\x01\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa0\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb8\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x9f\x01\x7f\x00\x9f\x01\x9f\x01\x9f\x01\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9f\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb7\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9b\x01\x00\x00\x00\x00\x00\x00\x9e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb5\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb2\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb6\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb1\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9a\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xaf\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x99\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x9f\x01\x7f\x00\x9f\x01\x9f\x01\x9f\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9f\x01\x00\x00\x00\x00\xbc\x01\x00\x00\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\xc3\x01\x00\x00\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\x94\x01\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa0\x01\x82\x00\xa0\x01\xa0\x01\xa0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa0\x01\x00\x00\x00\x00\xbc\x01\x00\x00\xc9\x01\xc9\x01\xc9\x01\xc9\x01\xc9\x01\xc9\x01\xc9\x01\xc9\x01\x01\x01\x01\x01\x00\x00\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\x93\x01\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa1\x01\xd5\x00\xa1\x01\xa1\x01\xa1\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x01\x00\x00\xa3\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xad\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa2\x01\xdd\x00\xa2\x01\xa2\x01\xa2\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xa2\x01\x00\x00\xa4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xab\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x02\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x04\x01\x03\x01\x21\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc7\x00\xc8\x00\x45\x00\x99\x00\x99\x00\x99\x00\x9a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8c\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xaa\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\xb4\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x05\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x07\x01\x06\x01\x20\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xc9\x00\xca\x00\x44\x00\x9b\x00\x9b\x00\x9b\x00\x9c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xbc\x01\x00\x00\xc9\x01\xc9\x01\xc9\x01\xc9\x01\xc9\x01\xc9\x01\xc9\x01\xc9\x01\x01\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x01\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x01\x00\x00\x00\x00\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x01\x00\x00\x00\x00\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x08\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x0a\x01\x09\x01\x1f\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcb\x00\xcc\x00\x43\x00\x9d\x00\x9d\x00\x9d\x00\x9e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfa\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfc\x00\xfb\x00\x22\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc5\x00\xc6\x00\x46\x00\x97\x00\x97\x00\x97\x00\x98\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xf7\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf9\x00\xf8\x00\x24\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc2\x00\xc3\x00\x47\x00\x92\x00\x92\x00\x92\x00\x93\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#--alex_check :: AlexAddr-alex_check = AlexA# "\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x2a\x00\x2a\x00\x65\x00\x65\x00\x63\x00\x2f\x00\x2f\x00\x67\x00\x73\x00\x6d\x00\x63\x00\x79\x00\x6d\x00\x63\x00\x61\x00\x6d\x00\x6d\x00\x61\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x73\x00\x5d\x00\x5e\x00\x5f\x00\x6f\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x2a\x00\x6d\x00\x67\x00\x73\x00\x61\x00\x2f\x00\x72\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x61\x00\x20\x00\x67\x00\x63\x00\x63\x00\x75\x00\x63\x00\x65\x00\x61\x00\x65\x00\x6d\x00\x63\x00\x61\x00\x20\x00\x61\x00\x65\x00\x67\x00\x63\x00\x20\x00\x6d\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x6d\x00\x6f\x00\x69\x00\x2f\x00\x64\x00\x6c\x00\x69\x00\x69\x00\x2f\x00\x69\x00\x6c\x00\x69\x00\x6c\x00\x69\x00\x6f\x00\x6c\x00\x65\x00\x67\x00\x20\x00\x65\x00\x69\x00\x65\x00\x65\x00\x65\x00\x75\x00\x65\x00\x6f\x00\x65\x00\x6f\x00\x61\x00\x75\x00\x77\x00\x6d\x00\x61\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2a\x00\x75\x00\x61\x00\x6f\x00\x65\x00\x2f\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x65\x00\x63\x00\x74\x00\x72\x00\x74\x00\x68\x00\x6c\x00\x64\x00\x72\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x64\x00\x68\x00\x74\x00\x72\x00\x20\x00\x72\x00\x72\x00\x62\x00\x6f\x00\x62\x00\x6d\x00\x6e\x00\x70\x00\x61\x00\x74\x00\x74\x00\x72\x00\x6e\x00\x20\x00\x66\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x72\x00\x6e\x00\x64\x00\x6e\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x70\x00\x6c\x00\x6c\x00\x76\x00\x74\x00\x6e\x00\x6e\x00\x6e\x00\x6e\x00\x6e\x00\x6c\x00\x6c\x00\x6c\x00\x70\x00\x72\x00\x6c\x00\x2e\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2a\x00\x74\x00\x74\x00\x70\x00\x72\x00\x2f\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x74\x00\x74\x00\x74\x00\x69\x00\x74\x00\x74\x00\x74\x00\x74\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x74\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x64\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x64\x00\x3a\x00\x66\x00\x3a\x00\x6e\x00\x3a\x00\x3a\x00\x3a\x00\xff\xff\x73\x00\x6e\x00\x3a\x00\x20\x00\x3a\x00\x78\x00\x3a\x00\x74\x00\x3a\x00\x20\x00\x3a\x00\x22\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x3a\x00\x3a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3d\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x2b\x00\x20\x00\x2d\x00\x22\x00\x3a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x73\x00\x3a\x00\x73\x00\x3a\x00\x73\x00\x3a\x00\x73\x00\x3a\x00\x73\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x73\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x70\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2a\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x3a\x00\x3a\x00\x3a\x00\x2e\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3d\x00\x3d\x00\x3d\x00\x3e\x00\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2a\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2d\x00\x2b\x00\x3c\x00\x3d\x00\x3d\x00\x3c\x00\x3d\x00\x3d\x00\x3e\x00\x3d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x3e\x00\xff\xff\x3d\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2a\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x2a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3d\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x55\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x3a\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x2e\x00\x4c\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x26\x00\xff\xff\x75\x00\x4c\x00\x55\x00\x4c\x00\x45\x00\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x61\x00\x6c\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\xff\xff\x3d\x00\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x73\x00\x73\x00\x73\x00\x73\x00\x73\x00\xff\xff\x6c\x00\x75\x00\x6c\x00\x65\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x0a\x00\x61\x00\xff\xff\x63\x00\x64\x00\x65\x00\x66\x00\xff\xff\xff\xff\x69\x00\xff\xff\x6b\x00\x6c\x00\x6d\x00\xff\xff\xff\xff\x70\x00\xff\xff\x72\x00\x73\x00\x74\x00\x75\x00\xff\xff\xff\xff\x22\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\x1b\x00\x1c\x00\x1d\x00\x1e\x00\x1f\x00\x20\x00\x21\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7b\x00\x7c\x00\x7d\x00\x7e\x00\x7f\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x22\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x3a\x00\x3a\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\x4c\x00\x55\x00\xff\xff\x3d\x00\xff\xff\x4c\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x6c\x00\x75\x00\x73\x00\x73\x00\x5f\x00\x6c\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x4c\x00\xff\xff\x7c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x4c\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2f\x00\xff\xff\x75\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x4c\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2f\x00\xff\xff\x75\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x4c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x75\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\x45\x00\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x65\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\xff\xff\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x75\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x67\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\x70\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x65\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x72\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\x2e\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x65\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x75\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x70\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\x2e\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x65\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x75\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x22\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5f\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\xff\xff\x2e\x00\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x22\x00\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\x58\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x65\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x75\x00\xff\xff\xff\xff\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x88\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xaf\x00\xb0\x00\xb1\x00\xb2\x00\xb3\x00\xb4\x00\xb5\x00\xb6\x00\xb7\x00\xb8\x00\xb9\x00\xba\x00\xbb\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\xd2\x00\xd3\x00\xd4\x00\xd5\x00\xd6\x00\xd7\x00\xd8\x00\xd9\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xdf\x00\xe0\x00\xe1\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe7\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xec\x00\xed\x00\xee\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00"#--alex_deflt :: AlexAddr-alex_deflt = AlexA# "\xff\xff\xff\xff\xcd\x00\xff\xff\xc4\x00\xff\xff\xc1\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x79\x00\x7b\x00\x7b\x00\x7d\x00\x7d\x00\xff\xff\xff\xff\xff\xff\x91\x00\x91\x00\x96\x00\x96\x00\xa1\x00\xa1\x00\xff\xff\xa8\x00\xa8\x00\xff\xff\xae\x00\xae\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xc1\x00\xc1\x00\xc1\x00\xc2\x00\xc2\x00\xc4\x00\xc4\x00\xc4\x00\xc5\x00\xc5\x00\xc7\x00\xc7\x00\xc9\x00\xc9\x00\xcb\x00\xcb\x00\xcd\x00\xcd\x00\xcd\x00\xce\x00\xce\x00\xd0\x00\xd0\x00\xd2\x00\xd2\x00\xd7\x00\xd7\x00\xd8\x00\xd8\x00\xda\x00\xda\x00\xdf\x00\xdf\x00\xe0\x00\xe0\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xc1\x00\xf9\x00\xf9\x00\xc4\x00\xfc\x00\xfc\x00\x04\x01\x04\x01\x07\x01\x07\x01\x0a\x01\x0a\x01\xcd\x00\x0d\x01\x0d\x01\x10\x01\x10\x01\x13\x01\x13\x01\x15\x01\xff\xff\x15\x01\x15\x01\x17\x01\x17\x01\x1a\x01\x1a\x01\x1c\x01\xff\xff\x1c\x01\x1c\x01\x1e\x01\x1e\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x03\x02\x03\x02\x03\x02\x01\x02\x01\x02\x01\x02\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x9c\x01\x9c\x01\x9c\x01\xa3\x01\xa3\x01\xa3\x01\xa4\x01\xa4\x01\xa4\x01\x8f\x01\x8f\x01\x8f\x01\x8d\x01\x8d\x01\x8d\x01\x8c\x01\x8c\x01\x8c\x01\x8b\x01\x15\x01\x8b\x01\x8b\x01\x8a\x01\x8a\x01\x8a\x01\x89\x01\x1c\x01\x89\x01\x89\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x01\x8a\x01\x8b\x01\x8c\x01\x8d\x01\x8d\x01\x8f\x01\xff\xff\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\x9c\x01\xa3\x01\xa4\x01\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x01\x02\xff\xff\x03\x02\xff\xff\xff\xff\xff\xff\xff\xff"#--alex_accept = listArray (0::Int,519) [AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccNone,AlexAccPred (alex_action_0) ( allowAnti )(AlexAcc (alex_action_62)),AlexAccPred (alex_action_1) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_2) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_3) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_4) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_5) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_6) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_7) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_8) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_9) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_10) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_11) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_12) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_13) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_14) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_15) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_16) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_17) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_18) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_19) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_20) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_21) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_22) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_23) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_24) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_25) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_26) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_27) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_28) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_29) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_30) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_31) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_32) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_33) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_34) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_35) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_36) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_37) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_38) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_39) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_40) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_41) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_42) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_43) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_44) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_45) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_46) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_47) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_48) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_49) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_50) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_51) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_52) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_53) ( allowAnti )(AlexAccNone),AlexAccPred (alex_action_54) (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccPred (alex_action_54) (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone)),AlexAccPred (alex_action_55) (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccPred (alex_action_55) (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone)),AlexAcc (alex_action_56),AlexAcc (alex_action_56),AlexAccSkip,AlexAccSkip,AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkipPred (alexPrevCharMatches(\c -> c >= '\n' && c <= '\n' || False))(AlexAccNone),AlexAccSkip,AlexAccSkip,AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_62),AlexAcc (alex_action_63),AlexAcc (alex_action_63),AlexAcc (alex_action_63),AlexAcc (alex_action_64),AlexAcc (alex_action_64),AlexAcc (alex_action_64),AlexAcc (alex_action_64),AlexAcc (alex_action_64),AlexAcc (alex_action_64),AlexAcc (alex_action_65),AlexAcc (alex_action_65),AlexAcc (alex_action_65),AlexAcc (alex_action_65),AlexAcc (alex_action_65),AlexAcc (alex_action_65),AlexAcc (alex_action_65),AlexAcc (alex_action_66),AlexAcc (alex_action_66),AlexAcc (alex_action_66),AlexAcc (alex_action_66),AlexAcc (alex_action_66),AlexAcc (alex_action_66),AlexAcc (alex_action_67),AlexAcc (alex_action_68),AlexAcc (alex_action_69),AlexAcc (alex_action_70),AlexAcc (alex_action_71),AlexAcc (alex_action_72),AlexAcc (alex_action_73),AlexAcc (alex_action_74),AlexAcc (alex_action_75),AlexAcc (alex_action_76),AlexAcc (alex_action_77),AlexAcc (alex_action_78),AlexAcc (alex_action_79),AlexAcc (alex_action_80),AlexAcc (alex_action_81),AlexAcc (alex_action_82),AlexAcc (alex_action_83),AlexAcc (alex_action_84),AlexAcc (alex_action_85),AlexAcc (alex_action_86),AlexAcc (alex_action_87),AlexAcc (alex_action_88),AlexAcc (alex_action_89),AlexAcc (alex_action_90),AlexAcc (alex_action_91),AlexAcc (alex_action_92),AlexAcc (alex_action_93),AlexAcc (alex_action_94),AlexAcc (alex_action_95),AlexAcc (alex_action_96),AlexAcc (alex_action_97),AlexAcc (alex_action_98),AlexAcc (alex_action_99),AlexAcc (alex_action_100),AlexAcc (alex_action_101),AlexAcc (alex_action_102),AlexAcc (alex_action_103),AlexAcc (alex_action_104),AlexAcc (alex_action_105),AlexAcc (alex_action_106),AlexAcc (alex_action_107),AlexAcc (alex_action_108),AlexAcc (alex_action_109),AlexAcc (alex_action_110),AlexAcc (alex_action_111),AlexAcc (alex_action_112),AlexAcc (alex_action_113),AlexAcc (alex_action_114),AlexAcc (alex_action_115),AlexAcc (alex_action_116),AlexAcc (alex_action_117),AlexAcc (alex_action_118),AlexAccPred (alex_action_119) ( ifExtension objcExts )(AlexAccNone),AlexAccPred (alex_action_120) ( ifExtension cudaExts )(AlexAccNone),AlexAccPred (alex_action_121) ( ifExtension cudaExts )(AlexAccNone)]-{-# LINE 241 "Language/C/Parser/Lexer.x" #-}--type Action = AlexInput -> AlexInput -> P (L Token)--inputString :: AlexInput -> AlexInput -> String-inputString beg end =- (B.unpack . B.take (alexOff end - alexOff beg)) (alexInput beg)--locateTok :: AlexInput -> AlexInput -> Token -> L Token-locateTok beg end tok =- L (Loc (alexPos beg) (alexPos end)) tok--token :: Token -> Action-token tok beg end =- return $ locateTok beg end tok--setLineFromPragma :: Action-setLineFromPragma beg end = do- inp <- getInput- setInput inp { alexPos = pos' }- lexToken- where- (_ : l : ws) = words (inputString beg end)- line = read l - 1- filename = (takeWhile (/= '\"') . drop 1 . concat . intersperse " ") ws-- pos' :: Pos- pos' = Pos filename line 1 (posCoff (alexPos beg))--identifier :: Action-identifier beg end =- case Map.lookup ident keywordMap of- Nothing -> nonKeyword- Just (tok, Nothing) -> keyword tok- Just (tok, Just i) -> do isKw <- useExts i- if isKw then keyword tok else nonKeyword- where- ident :: String- ident = inputString beg end-- -- NB: Due to the format of the keyword table, the lexer can't currently produce different- -- keyword tokens for the same lexeme in dependence on the active language extension.- -- We need to distinguish between the 'private' keyword of OpenCL and Objective-C, though,- -- to avoid a large number of shift-reduce conflicts. Hence, the ugly special case below.- keyword :: Token -> P (L Token)- keyword TCLprivate =- do isObjC <- useExts objcExts- if isObjC- then- return $ locateTok beg end TObjCprivate- else- return $ locateTok beg end TCLprivate- keyword tok =- return $ locateTok beg end tok-- nonKeyword :: P (L Token)- nonKeyword = do- typeTest <- isTypedef ident- classTest <- isClassdef ident- return $- if typeTest- then locateTok beg end (Tnamed ident)- else if classTest- then locateTok beg end (TObjCnamed ident)- else locateTok beg end (Tidentifier ident)--lexAnti ::(String -> Token) -> Action-lexAnti antiTok beg end = do- c <- nextChar- s <- case c of- '(' -> lexExpression 0 ""- _ | isIdStartChar c -> lexIdChars [c]- | otherwise -> lexerError beg (text "illegal anitquotation")- return $ locateTok beg end (antiTok s)- where- lexIdChars :: String -> P String- lexIdChars s = do- maybe_c <- maybePeekChar- case maybe_c of- Just c | isIdChar c -> skipChar >> lexIdChars (c : s)- _ -> return (reverse s)-- lexExpression :: Int -> String -> P String- lexExpression depth s = do- maybe_c <- maybePeekChar- case maybe_c of- Nothing -> do end <- getInput- parserError (Loc (alexPos beg) (alexPos end))- (text "unterminated antiquotation")- Just '(' -> skipChar >> lexExpression (depth+1) ('(' : s)- Just ')' | depth == 0 -> skipChar >> return (unescape (reverse s))- | otherwise -> skipChar >> lexExpression (depth-1) (')' : s)- Just c -> skipChar >> lexExpression depth (c : s)- where- unescape :: String -> String- unescape ('\\':'|':'\\':']':s) = '|' : ']' : unescape s- unescape (c:s) = c : unescape s- unescape [] = []-- isIdStartChar :: Char -> Bool- isIdStartChar '_' = True- isIdStartChar c = isLower c-- isIdChar :: Char -> Bool- isIdChar '_' = True- isIdChar '\'' = True- isIdChar c = isAlphaNum c--pragmaTok :: Action-pragmaTok beg end =- return $ locateTok beg end (Tpragma (findPragma (inputString beg end)))- where- findPragma :: String -> String- findPragma s | pragma `isPrefixOf` s =- (trim . drop (length pragma)) s- where- trim = f . f- f = reverse . dropWhile isSpace- findPragma s =- findPragma (tail s)-- pragma :: String- pragma = "pragma"---- XXX: Gross hack. We assume the first character of our input is the textual--- representation of tok, e.g., '{' or ';'. We then scan to the first '/', which--- we assume is the start of the comment.-commentTok :: Token -> Action-commentTok tok beg end = do- pushbackToken $ locateTok commentBeg end (Tcomment (inputString commentBeg end))- return $ locateTok beg tokEnd tok- where- tokEnd, commentBeg :: AlexInput- tokEnd = case alexGetChar beg of- Nothing -> error "commentTok: the impossible happened"- Just (_, tokEnd) -> tokEnd- commentBeg = findCommentStart tokEnd-- findCommentStart :: AlexInput -> AlexInput- findCommentStart inp =- case alexGetChar inp of- Nothing -> error "commentTok: the impossible happened"- Just ('/', inp') -> inp- Just (_, inp') -> findCommentStart inp'--lexCharTok :: Action-lexCharTok beg cur = do- c <- nextChar >>= lexChar- end <- getInput- return $ locateTok beg end (TcharConst (inputString beg end, c))- where- lexChar :: Char -> P Char- lexChar '\'' = emptyCharacterLiteral beg- lexChar '\\' = do c <- lexCharEscape- assertNextChar '\''- return c- lexChar c = do assertNextChar '\''- return c-- assertNextChar :: Char -> P ()- assertNextChar c = do- c' <- nextChar- when (c' /= c) $- illegalCharacterLiteral cur--lexStringTok :: Action-lexStringTok beg _ = do- s <- lexString ""- end <- getInput- return $ locateTok beg end (TstringConst (inputString beg end, s))- where- lexString :: String -> P String- lexString s = do- c <- nextChar- case c of- '"' -> return (reverse s)- '\\' -> do c' <- lexCharEscape- lexString (c' : s)- _ -> lexString (c : s)--lexCharEscape :: P Char-lexCharEscape = do- cur <- getInput- c <- nextChar- case c of- 'a' -> return '\a'- 'b' -> return '\b'- 'f' -> return '\f'- 'n' -> return '\n'- 'r' -> return '\r'- 't' -> return '\t'- 'v' -> return '\v'- '\\' -> return '\\'- '\'' -> return '\''- '"' -> return '"'- '?' -> return '?'- 'x' -> chr <$> checkedReadNum isHexDigit 16 hexDigit- n | isOctDigit n -> setInput cur >> chr <$> checkedReadNum isOctDigit 8 octDigit- c -> return c--lexInteger :: Int -> Radix -> Action-lexInteger ndrop radix@(_, isRadixDigit, _) beg end =- case i of- [n] -> return $ locateTok beg end (toToken n)- _ -> fail "bad parse for integer"- where- num :: String- num = (takeWhile isRadixDigit . drop ndrop) s-- suffix :: String- suffix = (map toLower . takeWhile (not . isRadixDigit) . reverse) s-- s :: String- s = inputString beg end-- i :: [Integer]- i = do (n, _) <- readInteger radix num- return n-- toToken :: Integer -> Token- toToken n =- case numElls of- 0 -> TintConst (s, isUnsigned, n)- 1 -> TlongIntConst (s, isUnsigned, n)- 2 -> TlongLongIntConst (s, isUnsigned, n)- where- numElls :: Int- numElls = (length . filter (== 'l')) suffix-- isUnsigned :: C.Signed- isUnsigned = if 'u' `elem` suffix then C.Unsigned else C.Signed--lexFloat :: Action-lexFloat beg end =- case i of- [n] -> return $ locateTok beg end (toToken n)- _ -> fail "bad parse for integer"- where- s :: String- s = inputString beg end-- prefix :: String- prefix = takeWhile (not . isSuffix) s-- suffix :: String- suffix = (map toLower . takeWhile isSuffix . reverse) s-- isSuffix :: Char -> Bool- isSuffix = (`elem` ['l', 'L', 'f', 'F'])-- i :: [Rational]- i = do (n, _) <- readRational s- return n-- toToken :: Rational -> Token- toToken n =- case suffix of- "" -> TdoubleConst (s, n)- "f" -> TfloatConst (s, n)- "l" -> TlongDoubleConst (s, n)--type Radix = (Integer, Char -> Bool, Char -> Int)--decDigit :: Char -> Int-decDigit c | c >= '0' && c <= '9' = ord c - ord '0'- | otherwise = error "error in decimal constant"--octDigit :: Char -> Int-octDigit c | c >= '0' && c <= '7' = ord c - ord '0'- | otherwise = error "error in octal constant"--hexDigit :: Char -> Int-hexDigit c | c >= 'a' && c <= 'f' = 10 + ord c - ord 'a'- | c >= 'A' && c <= 'F' = 10 + ord c - ord 'A'- | c >= '0' && c <= '9' = ord c - ord '0'- | otherwise = error "error in hexadecimal constant"--decimal :: Radix-decimal = (10, isDigit, decDigit)--octal :: Radix-octal = (8, isOctDigit, octDigit)--hexadecimal :: Radix-hexadecimal = (16, isHexDigit, hexDigit)--readInteger :: Radix -> ReadS Integer-readInteger (radix, isRadixDigit, charToInt) =- go 0- where- go :: Integer -> ReadS Integer- go x [] = return (x, "")- go x (c : cs)- | isRadixDigit c = go (x * radix + toInteger (charToInt c)) cs- | otherwise = return (x, c : cs)--readDecimal :: ReadS Integer-readDecimal = readInteger decimal--readRational :: ReadS Rational-readRational s = do- (n, d, t) <- readFix s- (x, _) <- readExponent t- return ((n % 1) * 10^^(x - toInteger d), t)- where- readFix :: String -> [(Integer, Int, String)]- readFix s =- return (read (i ++ f), length f, u)- where- (i, t) = span isDigit s- (f, u) = case t of- '.' : u -> span isDigit u- _ -> ("", t)-- readExponent :: ReadS Integer- readExponent "" = return (0, "")- readExponent (e : s) | e `elem` "eE" = go s- | otherwise = return (0, s)- where- go :: ReadS Integer- go ('+' : s) = readDecimal s- go ('-' : s) = do (x, t) <- readDecimal s- return (-x, t)- go s = readDecimal s--checkedReadNum :: (Char -> Bool) -> Int -> (Char -> Int) -> P Int-checkedReadNum isDigit base conv = do- cur <- getInput- c <- peekChar- when (not $ isDigit c) $- illegalNumericalLiteral cur- readNum isDigit base conv--readNum :: (Char -> Bool) -> Int -> (Char -> Int) -> P Int-readNum isDigit base conv =- read 0- where- read :: Int -> P Int- read n = do- c <- peekChar- if isDigit c- then do let n' = n*base + conv c- n' `seq` skipChar >> read n'- else return n--lexToken :: P (L Token)-lexToken = do- maybe_tok <- getPushbackToken- case maybe_tok of- Nothing -> nextToken- Just tok -> return tok- where- nextToken :: P (L Token)- nextToken = do- beg <- getInput- sc <- getLexState- st <- get- case alexScanUser st beg sc of- AlexEOF ->- return $ L (Loc (alexPos beg) (alexPos beg)) Teof- AlexError end ->- lexerError end (text rest)- where- rest :: String- rest = B.unpack $ B.take 80 (alexInput end)- AlexSkip end _ ->- setInput end >> lexToken- AlexToken end len t ->- setInput end >> t beg end--alex_action_0 = token Ttypename -alex_action_1 = lexAnti Tanti_id -alex_action_2 = lexAnti Tanti_const -alex_action_3 = lexAnti Tanti_int -alex_action_4 = lexAnti Tanti_uint -alex_action_5 = lexAnti Tanti_lint -alex_action_6 = lexAnti Tanti_ulint -alex_action_7 = lexAnti Tanti_llint -alex_action_8 = lexAnti Tanti_ullint -alex_action_9 = lexAnti Tanti_float -alex_action_10 = lexAnti Tanti_double -alex_action_11 = lexAnti Tanti_long_double -alex_action_12 = lexAnti Tanti_char -alex_action_13 = lexAnti Tanti_string -alex_action_14 = lexAnti Tanti_exp -alex_action_15 = lexAnti Tanti_func -alex_action_16 = lexAnti Tanti_args -alex_action_17 = lexAnti Tanti_decl -alex_action_18 = lexAnti Tanti_decls -alex_action_19 = lexAnti Tanti_sdecl -alex_action_20 = lexAnti Tanti_sdecls -alex_action_21 = lexAnti Tanti_enum -alex_action_22 = lexAnti Tanti_enums -alex_action_23 = lexAnti Tanti_esc -alex_action_24 = lexAnti Tanti_edecl -alex_action_25 = lexAnti Tanti_edecls -alex_action_26 = lexAnti Tanti_item -alex_action_27 = lexAnti Tanti_items -alex_action_28 = lexAnti Tanti_stm -alex_action_29 = lexAnti Tanti_stms -alex_action_30 = lexAnti Tanti_type -alex_action_31 = lexAnti Tanti_spec -alex_action_32 = lexAnti Tanti_param -alex_action_33 = lexAnti Tanti_params -alex_action_34 = lexAnti Tanti_pragma -alex_action_35 = lexAnti Tanti_comment -alex_action_36 = lexAnti Tanti_init -alex_action_37 = lexAnti Tanti_inits -alex_action_38 = lexAnti Tanti_exp -alex_action_39 = lexAnti Tanti_objc_ifdecl -alex_action_40 = lexAnti Tanti_objc_ifdecls -alex_action_41 = lexAnti Tanti_objc_prop -alex_action_42 = lexAnti Tanti_objc_props -alex_action_43 = lexAnti Tanti_objc_prop_attr -alex_action_44 = lexAnti Tanti_objc_prop_attrs -alex_action_45 = lexAnti Tanti_objc_dicts -alex_action_46 = lexAnti Tanti_objc_param -alex_action_47 = lexAnti Tanti_objc_params -alex_action_48 = lexAnti Tanti_objc_method_proto -alex_action_49 = lexAnti Tanti_objc_method_def -alex_action_50 = lexAnti Tanti_objc_method_defs -alex_action_51 = lexAnti Tanti_objc_recv -alex_action_52 = lexAnti Tanti_objc_arg -alex_action_53 = lexAnti Tanti_objc_args -alex_action_54 = setLineFromPragma -alex_action_55 = setLineFromPragma -alex_action_56 = pragmaTok -alex_action_62 = identifier -alex_action_63 = lexFloat -alex_action_64 = lexInteger 0 decimal -alex_action_65 = lexInteger 1 octal -alex_action_66 = lexInteger 2 hexadecimal -alex_action_67 = lexCharTok -alex_action_68 = lexStringTok -alex_action_69 = token Tlparen -alex_action_70 = token Trparen -alex_action_71 = token Tlbrack -alex_action_72 = token Trbrack -alex_action_73 = token Tlbrace -alex_action_74 = token Trbrace -alex_action_75 = token Tcomma -alex_action_76 = token Tsemi -alex_action_77 = token Tcolon -alex_action_78 = token Tquestion -alex_action_79 = token Tdot -alex_action_80 = token Tarrow -alex_action_81 = token Tellipses -alex_action_82 = token Tplus -alex_action_83 = token Tminus -alex_action_84 = token Tstar -alex_action_85 = token Tdiv -alex_action_86 = token Tmod -alex_action_87 = token Tnot -alex_action_88 = token Tand -alex_action_89 = token Tor -alex_action_90 = token Txor -alex_action_91 = token Tlsh -alex_action_92 = token Trsh -alex_action_93 = token Tinc -alex_action_94 = token Tdec -alex_action_95 = token Tlnot -alex_action_96 = token Tland -alex_action_97 = token Tlor -alex_action_98 = token Teq -alex_action_99 = token Tne -alex_action_100 = token Tlt -alex_action_101 = token Tgt -alex_action_102 = token Tle -alex_action_103 = token Tge -alex_action_104 = token Tassign -alex_action_105 = token Tadd_assign -alex_action_106 = token Tsub_assign -alex_action_107 = token Tmul_assign -alex_action_108 = token Tdiv_assign -alex_action_109 = token Tmod_assign -alex_action_110 = token Tand_assign -alex_action_111 = token Tor_assign -alex_action_112 = token Txor_assign -alex_action_113 = token Tlsh_assign -alex_action_114 = token Trsh_assign -alex_action_115 = commentTok Tlbrace -alex_action_116 = commentTok Tlbrace -alex_action_117 = commentTok Tsemi -alex_action_118 = commentTok Tsemi -alex_action_119 = token TObjCat -alex_action_120 = token TCUDA3lt -alex_action_121 = token TCUDA3gt -{-# LINE 1 "templates/GenericTemplate.hs" #-}-{-# LINE 1 "templates/GenericTemplate.hs" #-}-{-# LINE 1 "<command-line>" #-}-{-# LINE 8 "<command-line>" #-}-# 1 "/usr/include/stdc-predef.h" 1 3 4--# 17 "/usr/include/stdc-predef.h" 3 4-------------------------------------------{-# LINE 8 "<command-line>" #-}-{-# LINE 1 "templates/GenericTemplate.hs" #-}--- -------------------------------------------------------------------------------- ALEX TEMPLATE------ This code is in the PUBLIC DOMAIN; you may copy it freely and use--- it for any purpose whatsoever.---- -------------------------------------------------------------------------------- INTERNALS and main scanner engine--{-# LINE 21 "templates/GenericTemplate.hs" #-}-------- Do not remove this comment. Required to fix CPP parsing when using GCC and a clang-compiled alex.-#if __GLASGOW_HASKELL__ > 706-#define GTE(n,m) (tagToEnum# (n >=# m))-#define EQ(n,m) (tagToEnum# (n ==# m))-#else-#define GTE(n,m) (n >=# m)-#define EQ(n,m) (n ==# m)-#endif-{-# LINE 51 "templates/GenericTemplate.hs" #-}---data AlexAddr = AlexA# Addr#--- Do not remove this comment. Required to fix CPP parsing when using GCC and a clang-compiled alex.-#if __GLASGOW_HASKELL__ < 503-uncheckedShiftL# = shiftL#-#endif--{-# INLINE alexIndexInt16OffAddr #-}-alexIndexInt16OffAddr (AlexA# arr) off =-#ifdef WORDS_BIGENDIAN- narrow16Int# i- where- i = word2Int# ((high `uncheckedShiftL#` 8#) `or#` low)- high = int2Word# (ord# (indexCharOffAddr# arr (off' +# 1#)))- low = int2Word# (ord# (indexCharOffAddr# arr off'))- off' = off *# 2#-#else- indexInt16OffAddr# arr off-#endif------{-# INLINE alexIndexInt32OffAddr #-}-alexIndexInt32OffAddr (AlexA# arr) off = -#ifdef WORDS_BIGENDIAN- narrow32Int# i- where- i = word2Int# ((b3 `uncheckedShiftL#` 24#) `or#`- (b2 `uncheckedShiftL#` 16#) `or#`- (b1 `uncheckedShiftL#` 8#) `or#` b0)- b3 = int2Word# (ord# (indexCharOffAddr# arr (off' +# 3#)))- b2 = int2Word# (ord# (indexCharOffAddr# arr (off' +# 2#)))- b1 = int2Word# (ord# (indexCharOffAddr# arr (off' +# 1#)))- b0 = int2Word# (ord# (indexCharOffAddr# arr off'))- off' = off *# 4#-#else- indexInt32OffAddr# arr off-#endif-------#if __GLASGOW_HASKELL__ < 503-quickIndex arr i = arr ! i-#else--- GHC >= 503, unsafeAt is available from Data.Array.Base.-quickIndex = unsafeAt-#endif------- -------------------------------------------------------------------------------- Main lexing routines--data AlexReturn a- = AlexEOF- | AlexError !AlexInput- | AlexSkip !AlexInput !Int- | AlexToken !AlexInput !Int a---- alexScan :: AlexInput -> StartCode -> AlexReturn a-alexScan input (I# (sc))- = alexScanUser undefined input (I# (sc))--alexScanUser user input (I# (sc))- = case alex_scan_tkn user input 0# input sc AlexNone of- (AlexNone, input') ->- case alexGetByte input of- Nothing -> ---- AlexEOF- Just _ ->---- AlexError input'-- (AlexLastSkip input'' len, _) ->---- AlexSkip input'' len-- (AlexLastAcc k input''' len, _) ->---- AlexToken input''' len k----- Push the input through the DFA, remembering the most recent accepting--- state it encountered.--alex_scan_tkn user orig_input len input s last_acc =- input `seq` -- strict in the input- let - new_acc = (check_accs (alex_accept `quickIndex` (I# (s))))- in- new_acc `seq`- case alexGetByte input of- Nothing -> (new_acc, input)- Just (c, new_input) -> ---- case fromIntegral c of { (I# (ord_c)) ->- let- base = alexIndexInt32OffAddr alex_base s- offset = (base +# ord_c)- check = alexIndexInt16OffAddr alex_check offset- - new_s = if GTE(offset,0#) && EQ(check,ord_c)- then alexIndexInt16OffAddr alex_table offset- else alexIndexInt16OffAddr alex_deflt s- in- case new_s of- -1# -> (new_acc, input)- -- on an error, we want to keep the input *before* the- -- character that failed, not after.- _ -> alex_scan_tkn user orig_input (if c < 0x80 || c >= 0xC0 then (len +# 1#) else len)- -- note that the length is increased ONLY if this is the 1st byte in a char encoding)- new_input new_s new_acc- }- where- check_accs (AlexAccNone) = last_acc- check_accs (AlexAcc a ) = AlexLastAcc a input (I# (len))- check_accs (AlexAccSkip) = AlexLastSkip input (I# (len))-- check_accs (AlexAccPred a predx rest)- | predx user orig_input (I# (len)) input- = AlexLastAcc a input (I# (len))- | otherwise- = check_accs rest- check_accs (AlexAccSkipPred predx rest)- | predx user orig_input (I# (len)) input- = AlexLastSkip input (I# (len))- | otherwise- = check_accs rest---data AlexLastAcc a- = AlexNone- | AlexLastAcc a !AlexInput !Int- | AlexLastSkip !AlexInput !Int--instance Functor AlexLastAcc where- fmap f AlexNone = AlexNone- fmap f (AlexLastAcc x y z) = AlexLastAcc (f x) y z- fmap f (AlexLastSkip x y) = AlexLastSkip x y--data AlexAcc a user- = AlexAccNone- | AlexAcc a- | AlexAccSkip-- | AlexAccPred a (AlexAccPred user) (AlexAcc a user)- | AlexAccSkipPred (AlexAccPred user) (AlexAcc a user)--type AlexAccPred user = user -> AlexInput -> Int -> AlexInput -> Bool---- -------------------------------------------------------------------------------- Predicates on a rule--alexAndPred p1 p2 user in1 len in2- = p1 user in1 len in2 && p2 user in1 len in2----alexPrevCharIsPred :: Char -> AlexAccPred _ -alexPrevCharIs c _ input _ _ = c == alexInputPrevChar input--alexPrevCharMatches f _ input _ _ = f (alexInputPrevChar input)----alexPrevCharIsOneOfPred :: Array Char Bool -> AlexAccPred _ -alexPrevCharIsOneOf arr _ input _ _ = arr ! alexInputPrevChar input----alexRightContext :: Int -> AlexAccPred _-alexRightContext (I# (sc)) user _ _ input = - case alex_scan_tkn user input 0# input sc AlexNone of- (AlexNone, _) -> False- _ -> True- -- TODO: there's no need to find the longest- -- match when checking the right context, just- -- the first match will do.----- used by wrappers-iUnbox (I# (i)) = i
− dist/build/Language/C/Parser/Parser.hs
@@ -1,10660 +0,0 @@-{-# OPTIONS_GHC -w #-}-{-# OPTIONS -fglasgow-exts -cpp #-}-{-# OPTIONS -w #-}---- |--- Module : Language.C.Parser.Parser--- Copyright : (c) Harvard University 2006-2011--- (c) Geoffrey Mainland 2011-2012--- (c) Manuel M T Chakravarty 2013-2014--- (c) Drexel University 2013-2014--- License : BSD-style--- Maintainer : mainland@cs.drexel.edu--module Language.C.Parser.Parser where--import Control.Monad (forM_,- when,- unless,- liftM)-import Control.Monad.Exception-import Data.List (intersperse)-import Data.Loc-import Data.Maybe (fromMaybe, catMaybes)-import Data.Monoid-import Text.PrettyPrint.Mainland--import Language.C.Parser.Lexer-import Language.C.Parser.Monad-import qualified Language.C.Parser.Tokens as T-import Language.C.Pretty-import Language.C.Syntax-import qualified Language.C.Syntax as C-import qualified Data.Array as Happy_Data_Array-import qualified GHC.Exts as Happy_GHC_Exts-import Control.Applicative(Applicative(..))---- parser produced by Happy Version 1.19.4--newtype HappyAbsSyn = HappyAbsSyn HappyAny-#if __GLASGOW_HASKELL__ >= 607-type HappyAny = Happy_GHC_Exts.Any-#else-type HappyAny = forall a . a-#endif-happyIn28 :: (Id) -> (HappyAbsSyn )-happyIn28 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn28 #-}-happyOut28 :: (HappyAbsSyn ) -> (Id)-happyOut28 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut28 #-}-happyIn29 :: (Id) -> (HappyAbsSyn )-happyIn29 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn29 #-}-happyOut29 :: (HappyAbsSyn ) -> (Id)-happyOut29 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut29 #-}-happyIn30 :: (Const) -> (HappyAbsSyn )-happyIn30 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn30 #-}-happyOut30 :: (HappyAbsSyn ) -> (Const)-happyOut30 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut30 #-}-happyIn31 :: (L T.Token) -> (HappyAbsSyn )-happyIn31 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn31 #-}-happyOut31 :: (HappyAbsSyn ) -> (L T.Token)-happyOut31 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut31 #-}-happyIn32 :: (L T.Token) -> (HappyAbsSyn )-happyIn32 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn32 #-}-happyOut32 :: (HappyAbsSyn ) -> (L T.Token)-happyOut32 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut32 #-}-happyIn33 :: (Exp) -> (HappyAbsSyn )-happyIn33 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn33 #-}-happyOut33 :: (HappyAbsSyn ) -> (Exp)-happyOut33 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut33 #-}-happyIn34 :: (StringLit) -> (HappyAbsSyn )-happyIn34 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn34 #-}-happyOut34 :: (HappyAbsSyn ) -> (StringLit)-happyOut34 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut34 #-}-happyIn35 :: (RevList (L (String, String))) -> (HappyAbsSyn )-happyIn35 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn35 #-}-happyOut35 :: (HappyAbsSyn ) -> (RevList (L (String, String)))-happyOut35 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut35 #-}-happyIn36 :: (RevList Exp) -> (HappyAbsSyn )-happyIn36 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn36 #-}-happyOut36 :: (HappyAbsSyn ) -> (RevList Exp)-happyOut36 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut36 #-}-happyIn37 :: (Exp) -> (HappyAbsSyn )-happyIn37 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn37 #-}-happyOut37 :: (HappyAbsSyn ) -> (Exp)-happyOut37 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut37 #-}-happyIn38 :: (RevList Exp) -> (HappyAbsSyn )-happyIn38 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn38 #-}-happyOut38 :: (HappyAbsSyn ) -> (RevList Exp)-happyOut38 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut38 #-}-happyIn39 :: (Exp) -> (HappyAbsSyn )-happyIn39 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn39 #-}-happyOut39 :: (HappyAbsSyn ) -> (Exp)-happyOut39 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut39 #-}-happyIn40 :: (Exp) -> (HappyAbsSyn )-happyIn40 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn40 #-}-happyOut40 :: (HappyAbsSyn ) -> (Exp)-happyOut40 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut40 #-}-happyIn41 :: (Exp) -> (HappyAbsSyn )-happyIn41 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn41 #-}-happyOut41 :: (HappyAbsSyn ) -> (Exp)-happyOut41 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut41 #-}-happyIn42 :: (Exp) -> (HappyAbsSyn )-happyIn42 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn42 #-}-happyOut42 :: (HappyAbsSyn ) -> (Exp)-happyOut42 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut42 #-}-happyIn43 :: (Exp) -> (HappyAbsSyn )-happyIn43 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn43 #-}-happyOut43 :: (HappyAbsSyn ) -> (Exp)-happyOut43 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut43 #-}-happyIn44 :: (Exp) -> (HappyAbsSyn )-happyIn44 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn44 #-}-happyOut44 :: (HappyAbsSyn ) -> (Exp)-happyOut44 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut44 #-}-happyIn45 :: (Exp) -> (HappyAbsSyn )-happyIn45 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn45 #-}-happyOut45 :: (HappyAbsSyn ) -> (Exp)-happyOut45 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut45 #-}-happyIn46 :: (Exp) -> (HappyAbsSyn )-happyIn46 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn46 #-}-happyOut46 :: (HappyAbsSyn ) -> (Exp)-happyOut46 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut46 #-}-happyIn47 :: (Exp) -> (HappyAbsSyn )-happyIn47 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn47 #-}-happyOut47 :: (HappyAbsSyn ) -> (Exp)-happyOut47 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut47 #-}-happyIn48 :: (Exp) -> (HappyAbsSyn )-happyIn48 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn48 #-}-happyOut48 :: (HappyAbsSyn ) -> (Exp)-happyOut48 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut48 #-}-happyIn49 :: (Exp) -> (HappyAbsSyn )-happyIn49 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn49 #-}-happyOut49 :: (HappyAbsSyn ) -> (Exp)-happyOut49 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut49 #-}-happyIn50 :: (Exp) -> (HappyAbsSyn )-happyIn50 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn50 #-}-happyOut50 :: (HappyAbsSyn ) -> (Exp)-happyOut50 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut50 #-}-happyIn51 :: (Exp) -> (HappyAbsSyn )-happyIn51 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn51 #-}-happyOut51 :: (HappyAbsSyn ) -> (Exp)-happyOut51 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut51 #-}-happyIn52 :: (Exp) -> (HappyAbsSyn )-happyIn52 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn52 #-}-happyOut52 :: (HappyAbsSyn ) -> (Exp)-happyOut52 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut52 #-}-happyIn53 :: (Exp) -> (HappyAbsSyn )-happyIn53 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn53 #-}-happyOut53 :: (HappyAbsSyn ) -> (Exp)-happyOut53 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut53 #-}-happyIn54 :: (Maybe Exp) -> (HappyAbsSyn )-happyIn54 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn54 #-}-happyOut54 :: (HappyAbsSyn ) -> (Maybe Exp)-happyOut54 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut54 #-}-happyIn55 :: (Exp) -> (HappyAbsSyn )-happyIn55 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn55 #-}-happyOut55 :: (HappyAbsSyn ) -> (Exp)-happyOut55 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut55 #-}-happyIn56 :: (InitGroup) -> (HappyAbsSyn )-happyIn56 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn56 #-}-happyOut56 :: (HappyAbsSyn ) -> (InitGroup)-happyOut56 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut56 #-}-happyIn57 :: (InitGroup) -> (HappyAbsSyn )-happyIn57 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn57 #-}-happyOut57 :: (HappyAbsSyn ) -> (InitGroup)-happyOut57 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut57 #-}-happyIn58 :: (InitGroup) -> (HappyAbsSyn )-happyIn58 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn58 #-}-happyOut58 :: (HappyAbsSyn ) -> (InitGroup)-happyOut58 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut58 #-}-happyIn59 :: (InitGroup) -> (HappyAbsSyn )-happyIn59 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn59 #-}-happyOut59 :: (HappyAbsSyn ) -> (InitGroup)-happyOut59 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut59 #-}-happyIn60 :: ((DeclSpec, Decl)) -> (HappyAbsSyn )-happyIn60 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn60 #-}-happyOut60 :: (HappyAbsSyn ) -> ((DeclSpec, Decl))-happyOut60 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut60 #-}-happyIn61 :: ((DeclSpec, Decl)) -> (HappyAbsSyn )-happyIn61 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn61 #-}-happyOut61 :: (HappyAbsSyn ) -> ((DeclSpec, Decl))-happyOut61 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut61 #-}-happyIn62 :: ((DeclSpec, Decl)) -> (HappyAbsSyn )-happyIn62 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn62 #-}-happyOut62 :: (HappyAbsSyn ) -> ((DeclSpec, Decl))-happyOut62 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut62 #-}-happyIn63 :: ((DeclSpec, Decl)) -> (HappyAbsSyn )-happyIn63 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn63 #-}-happyOut63 :: (HappyAbsSyn ) -> ((DeclSpec, Decl))-happyOut63 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut63 #-}-happyIn64 :: ((DeclSpec, Decl)) -> (HappyAbsSyn )-happyIn64 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn64 #-}-happyOut64 :: (HappyAbsSyn ) -> ((DeclSpec, Decl))-happyOut64 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut64 #-}-happyIn65 :: ((DeclSpec, Decl)) -> (HappyAbsSyn )-happyIn65 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn65 #-}-happyOut65 :: (HappyAbsSyn ) -> ((DeclSpec, Decl))-happyOut65 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut65 #-}-happyIn66 :: (RevList TySpec) -> (HappyAbsSyn )-happyIn66 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn66 #-}-happyOut66 :: (HappyAbsSyn ) -> (RevList TySpec)-happyOut66 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut66 #-}-happyIn67 :: ([TySpec]) -> (HappyAbsSyn )-happyIn67 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn67 #-}-happyOut67 :: (HappyAbsSyn ) -> ([TySpec])-happyOut67 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut67 #-}-happyIn68 :: (RevList TySpec) -> (HappyAbsSyn )-happyIn68 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn68 #-}-happyOut68 :: (HappyAbsSyn ) -> (RevList TySpec)-happyOut68 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut68 #-}-happyIn69 :: ([TySpec]) -> (HappyAbsSyn )-happyIn69 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn69 #-}-happyOut69 :: (HappyAbsSyn ) -> ([TySpec])-happyOut69 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut69 #-}-happyIn70 :: (RevList TySpec) -> (HappyAbsSyn )-happyIn70 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn70 #-}-happyOut70 :: (HappyAbsSyn ) -> (RevList TySpec)-happyOut70 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut70 #-}-happyIn71 :: (RevList Init) -> (HappyAbsSyn )-happyIn71 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn71 #-}-happyOut71 :: (HappyAbsSyn ) -> (RevList Init)-happyOut71 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut71 #-}-happyIn72 :: (Init) -> (HappyAbsSyn )-happyIn72 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn72 #-}-happyOut72 :: (HappyAbsSyn ) -> (Init)-happyOut72 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut72 #-}-happyIn73 :: (TySpec) -> (HappyAbsSyn )-happyIn73 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn73 #-}-happyOut73 :: (HappyAbsSyn ) -> (TySpec)-happyOut73 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut73 #-}-happyIn74 :: (TySpec) -> (HappyAbsSyn )-happyIn74 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn74 #-}-happyOut74 :: (HappyAbsSyn ) -> (TySpec)-happyOut74 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut74 #-}-happyIn75 :: (TySpec) -> (HappyAbsSyn )-happyIn75 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn75 #-}-happyOut75 :: (HappyAbsSyn ) -> (TySpec)-happyOut75 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut75 #-}-happyIn76 :: (L (Maybe Id -> Maybe [FieldGroup] -> [Attr] -> SrcLoc -> TySpec)) -> (HappyAbsSyn )-happyIn76 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn76 #-}-happyOut76 :: (HappyAbsSyn ) -> (L (Maybe Id -> Maybe [FieldGroup] -> [Attr] -> SrcLoc -> TySpec))-happyOut76 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut76 #-}-happyIn77 :: (RevList FieldGroup) -> (HappyAbsSyn )-happyIn77 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn77 #-}-happyOut77 :: (HappyAbsSyn ) -> (RevList FieldGroup)-happyOut77 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut77 #-}-happyIn78 :: (FieldGroup) -> (HappyAbsSyn )-happyIn78 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn78 #-}-happyOut78 :: (HappyAbsSyn ) -> (FieldGroup)-happyOut78 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut78 #-}-happyIn79 :: ([TySpec]) -> (HappyAbsSyn )-happyIn79 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn79 #-}-happyOut79 :: (HappyAbsSyn ) -> ([TySpec])-happyOut79 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut79 #-}-happyIn80 :: (RevList TySpec) -> (HappyAbsSyn )-happyIn80 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn80 #-}-happyOut80 :: (HappyAbsSyn ) -> (RevList TySpec)-happyOut80 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut80 #-}-happyIn81 :: (RevList (Maybe Decl -> Field)) -> (HappyAbsSyn )-happyIn81 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn81 #-}-happyOut81 :: (HappyAbsSyn ) -> (RevList (Maybe Decl -> Field))-happyOut81 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut81 #-}-happyIn82 :: (Maybe Decl -> Field) -> (HappyAbsSyn )-happyIn82 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn82 #-}-happyOut82 :: (HappyAbsSyn ) -> (Maybe Decl -> Field)-happyOut82 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut82 #-}-happyIn83 :: (TySpec) -> (HappyAbsSyn )-happyIn83 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn83 #-}-happyOut83 :: (HappyAbsSyn ) -> (TySpec)-happyOut83 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut83 #-}-happyIn84 :: (RevList CEnum) -> (HappyAbsSyn )-happyIn84 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn84 #-}-happyOut84 :: (HappyAbsSyn ) -> (RevList CEnum)-happyOut84 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut84 #-}-happyIn85 :: (CEnum) -> (HappyAbsSyn )-happyIn85 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn85 #-}-happyOut85 :: (HappyAbsSyn ) -> (CEnum)-happyOut85 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut85 #-}-happyIn86 :: (TySpec) -> (HappyAbsSyn )-happyIn86 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn86 #-}-happyOut86 :: (HappyAbsSyn ) -> (TySpec)-happyOut86 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut86 #-}-happyIn87 :: ((Id, Decl -> Decl)) -> (HappyAbsSyn )-happyIn87 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn87 #-}-happyOut87 :: (HappyAbsSyn ) -> ((Id, Decl -> Decl))-happyOut87 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut87 #-}-happyIn88 :: ((Id, Decl -> Decl)) -> (HappyAbsSyn )-happyIn88 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn88 #-}-happyOut88 :: (HappyAbsSyn ) -> ((Id, Decl -> Decl))-happyOut88 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut88 #-}-happyIn89 :: ((Id, Decl -> Decl)) -> (HappyAbsSyn )-happyIn89 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn89 #-}-happyOut89 :: (HappyAbsSyn ) -> ((Id, Decl -> Decl))-happyOut89 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut89 #-}-happyIn90 :: ((Id, Decl -> Decl)) -> (HappyAbsSyn )-happyIn90 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn90 #-}-happyOut90 :: (HappyAbsSyn ) -> ((Id, Decl -> Decl))-happyOut90 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut90 #-}-happyIn91 :: ((Id, Decl -> Decl)) -> (HappyAbsSyn )-happyIn91 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn91 #-}-happyOut91 :: (HappyAbsSyn ) -> ((Id, Decl -> Decl))-happyOut91 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut91 #-}-happyIn92 :: ((Id, Decl -> Decl)) -> (HappyAbsSyn )-happyIn92 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn92 #-}-happyOut92 :: (HappyAbsSyn ) -> ((Id, Decl -> Decl))-happyOut92 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut92 #-}-happyIn93 :: ((Id, Decl -> Decl)) -> (HappyAbsSyn )-happyIn93 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn93 #-}-happyOut93 :: (HappyAbsSyn ) -> ((Id, Decl -> Decl))-happyOut93 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut93 #-}-happyIn94 :: ((Id, Decl -> Decl)) -> (HappyAbsSyn )-happyIn94 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn94 #-}-happyOut94 :: (HappyAbsSyn ) -> ((Id, Decl -> Decl))-happyOut94 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut94 #-}-happyIn95 :: (Decl -> Decl) -> (HappyAbsSyn )-happyIn95 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn95 #-}-happyOut95 :: (HappyAbsSyn ) -> (Decl -> Decl)-happyOut95 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut95 #-}-happyIn96 :: (Decl -> Decl) -> (HappyAbsSyn )-happyIn96 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn96 #-}-happyOut96 :: (HappyAbsSyn ) -> (Decl -> Decl)-happyOut96 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut96 #-}-happyIn97 :: (RevList TySpec) -> (HappyAbsSyn )-happyIn97 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn97 #-}-happyOut97 :: (HappyAbsSyn ) -> (RevList TySpec)-happyOut97 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut97 #-}-happyIn98 :: (Params) -> (HappyAbsSyn )-happyIn98 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn98 #-}-happyOut98 :: (HappyAbsSyn ) -> (Params)-happyOut98 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut98 #-}-happyIn99 :: ([Param]) -> (HappyAbsSyn )-happyIn99 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn99 #-}-happyOut99 :: (HappyAbsSyn ) -> ([Param])-happyOut99 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut99 #-}-happyIn100 :: (RevList Param) -> (HappyAbsSyn )-happyIn100 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn100 #-}-happyOut100 :: (HappyAbsSyn ) -> (RevList Param)-happyOut100 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut100 #-}-happyIn101 :: (Param) -> (HappyAbsSyn )-happyIn101 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn101 #-}-happyOut101 :: (HappyAbsSyn ) -> (Param)-happyOut101 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut101 #-}-happyIn102 :: (Type) -> (HappyAbsSyn )-happyIn102 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn102 #-}-happyOut102 :: (HappyAbsSyn ) -> (Type)-happyOut102 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut102 #-}-happyIn103 :: (RevList Id) -> (HappyAbsSyn )-happyIn103 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn103 #-}-happyOut103 :: (HappyAbsSyn ) -> (RevList Id)-happyOut103 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut103 #-}-happyIn104 :: (Type) -> (HappyAbsSyn )-happyIn104 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn104 #-}-happyOut104 :: (HappyAbsSyn ) -> (Type)-happyOut104 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut104 #-}-happyIn105 :: (Decl -> Decl) -> (HappyAbsSyn )-happyIn105 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn105 #-}-happyOut105 :: (HappyAbsSyn ) -> (Decl -> Decl)-happyOut105 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut105 #-}-happyIn106 :: (Decl -> Decl) -> (HappyAbsSyn )-happyIn106 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn106 #-}-happyOut106 :: (HappyAbsSyn ) -> (Decl -> Decl)-happyOut106 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut106 #-}-happyIn107 :: (TySpec) -> (HappyAbsSyn )-happyIn107 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn107 #-}-happyOut107 :: (HappyAbsSyn ) -> (TySpec)-happyOut107 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut107 #-}-happyIn108 :: (Initializer) -> (HappyAbsSyn )-happyIn108 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn108 #-}-happyOut108 :: (HappyAbsSyn ) -> (Initializer)-happyOut108 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut108 #-}-happyIn109 :: (RevList (Maybe Designation, Initializer)) -> (HappyAbsSyn )-happyIn109 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn109 #-}-happyOut109 :: (HappyAbsSyn ) -> (RevList (Maybe Designation, Initializer))-happyOut109 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut109 #-}-happyIn110 :: (Designation) -> (HappyAbsSyn )-happyIn110 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn110 #-}-happyOut110 :: (HappyAbsSyn ) -> (Designation)-happyOut110 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut110 #-}-happyIn111 :: (RevList Designator) -> (HappyAbsSyn )-happyIn111 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn111 #-}-happyOut111 :: (HappyAbsSyn ) -> (RevList Designator)-happyOut111 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut111 #-}-happyIn112 :: (Designator) -> (HappyAbsSyn )-happyIn112 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn112 #-}-happyOut112 :: (HappyAbsSyn ) -> (Designator)-happyOut112 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut112 #-}-happyIn113 :: (Stm) -> (HappyAbsSyn )-happyIn113 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn113 #-}-happyOut113 :: (HappyAbsSyn ) -> (Stm)-happyOut113 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut113 #-}-happyIn114 :: (Stm) -> (HappyAbsSyn )-happyIn114 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn114 #-}-happyOut114 :: (HappyAbsSyn ) -> (Stm)-happyOut114 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut114 #-}-happyIn115 :: ([Stm]) -> (HappyAbsSyn )-happyIn115 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn115 #-}-happyOut115 :: (HappyAbsSyn ) -> ([Stm])-happyOut115 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut115 #-}-happyIn116 :: (RevList Stm) -> (HappyAbsSyn )-happyIn116 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn116 #-}-happyOut116 :: (HappyAbsSyn ) -> (RevList Stm)-happyOut116 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut116 #-}-happyIn117 :: (Stm) -> (HappyAbsSyn )-happyIn117 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn117 #-}-happyOut117 :: (HappyAbsSyn ) -> (Stm)-happyOut117 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut117 #-}-happyIn118 :: (Stm) -> (HappyAbsSyn )-happyIn118 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn118 #-}-happyOut118 :: (HappyAbsSyn ) -> (Stm)-happyOut118 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut118 #-}-happyIn119 :: ([BlockItem]) -> (HappyAbsSyn )-happyIn119 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn119 #-}-happyOut119 :: (HappyAbsSyn ) -> ([BlockItem])-happyOut119 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut119 #-}-happyIn120 :: (RevList BlockItem) -> (HappyAbsSyn )-happyIn120 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn120 #-}-happyOut120 :: (HappyAbsSyn ) -> (RevList BlockItem)-happyOut120 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut120 #-}-happyIn121 :: (BlockItem) -> (HappyAbsSyn )-happyIn121 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn121 #-}-happyOut121 :: (HappyAbsSyn ) -> (BlockItem)-happyOut121 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut121 #-}-happyIn122 :: (BlockItem) -> (HappyAbsSyn )-happyIn122 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn122 #-}-happyOut122 :: (HappyAbsSyn ) -> (BlockItem)-happyOut122 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut122 #-}-happyIn123 :: (()) -> (HappyAbsSyn )-happyIn123 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn123 #-}-happyOut123 :: (HappyAbsSyn ) -> (())-happyOut123 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut123 #-}-happyIn124 :: (()) -> (HappyAbsSyn )-happyIn124 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn124 #-}-happyOut124 :: (HappyAbsSyn ) -> (())-happyOut124 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut124 #-}-happyIn125 :: (Stm) -> (HappyAbsSyn )-happyIn125 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn125 #-}-happyOut125 :: (HappyAbsSyn ) -> (Stm)-happyOut125 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut125 #-}-happyIn126 :: (Stm) -> (HappyAbsSyn )-happyIn126 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn126 #-}-happyOut126 :: (HappyAbsSyn ) -> (Stm)-happyOut126 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut126 #-}-happyIn127 :: (Stm) -> (HappyAbsSyn )-happyIn127 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn127 #-}-happyOut127 :: (HappyAbsSyn ) -> (Stm)-happyOut127 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut127 #-}-happyIn128 :: (Stm) -> (HappyAbsSyn )-happyIn128 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn128 #-}-happyOut128 :: (HappyAbsSyn ) -> (Stm)-happyOut128 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut128 #-}-happyIn129 :: ([Definition]) -> (HappyAbsSyn )-happyIn129 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn129 #-}-happyOut129 :: (HappyAbsSyn ) -> ([Definition])-happyOut129 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut129 #-}-happyIn130 :: (RevList Definition) -> (HappyAbsSyn )-happyIn130 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn130 #-}-happyOut130 :: (HappyAbsSyn ) -> (RevList Definition)-happyOut130 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut130 #-}-happyIn131 :: (Definition) -> (HappyAbsSyn )-happyIn131 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn131 #-}-happyOut131 :: (HappyAbsSyn ) -> (Definition)-happyOut131 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut131 #-}-happyIn132 :: (Func) -> (HappyAbsSyn )-happyIn132 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn132 #-}-happyOut132 :: (HappyAbsSyn ) -> (Func)-happyOut132 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut132 #-}-happyIn133 :: (RevList InitGroup) -> (HappyAbsSyn )-happyIn133 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn133 #-}-happyOut133 :: (HappyAbsSyn ) -> (RevList InitGroup)-happyOut133 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut133 #-}-happyIn134 :: (L ([Attr], Maybe AsmLabel)) -> (HappyAbsSyn )-happyIn134 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn134 #-}-happyOut134 :: (HappyAbsSyn ) -> (L ([Attr], Maybe AsmLabel))-happyOut134 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut134 #-}-happyIn135 :: (AsmLabel) -> (HappyAbsSyn )-happyIn135 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn135 #-}-happyOut135 :: (HappyAbsSyn ) -> (AsmLabel)-happyOut135 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut135 #-}-happyIn136 :: ([Attr]) -> (HappyAbsSyn )-happyIn136 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn136 #-}-happyOut136 :: (HappyAbsSyn ) -> ([Attr])-happyOut136 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut136 #-}-happyIn137 :: ([Attr]) -> (HappyAbsSyn )-happyIn137 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn137 #-}-happyOut137 :: (HappyAbsSyn ) -> ([Attr])-happyOut137 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut137 #-}-happyIn138 :: ([Attr]) -> (HappyAbsSyn )-happyIn138 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn138 #-}-happyOut138 :: (HappyAbsSyn ) -> ([Attr])-happyOut138 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut138 #-}-happyIn139 :: (RevList Attr) -> (HappyAbsSyn )-happyIn139 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn139 #-}-happyOut139 :: (HappyAbsSyn ) -> (RevList Attr)-happyOut139 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut139 #-}-happyIn140 :: (Attr) -> (HappyAbsSyn )-happyIn140 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn140 #-}-happyOut140 :: (HappyAbsSyn ) -> (Attr)-happyOut140 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut140 #-}-happyIn141 :: (Id) -> (HappyAbsSyn )-happyIn141 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn141 #-}-happyOut141 :: (HappyAbsSyn ) -> (Id)-happyOut141 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut141 #-}-happyIn142 :: (Bool) -> (HappyAbsSyn )-happyIn142 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn142 #-}-happyOut142 :: (HappyAbsSyn ) -> (Bool)-happyOut142 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut142 #-}-happyIn143 :: (Stm) -> (HappyAbsSyn )-happyIn143 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn143 #-}-happyOut143 :: (HappyAbsSyn ) -> (Stm)-happyOut143 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut143 #-}-happyIn144 :: ([AsmIn]) -> (HappyAbsSyn )-happyIn144 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn144 #-}-happyOut144 :: (HappyAbsSyn ) -> ([AsmIn])-happyOut144 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut144 #-}-happyIn145 :: (RevList AsmIn) -> (HappyAbsSyn )-happyIn145 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn145 #-}-happyOut145 :: (HappyAbsSyn ) -> (RevList AsmIn)-happyOut145 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut145 #-}-happyIn146 :: (AsmIn) -> (HappyAbsSyn )-happyIn146 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn146 #-}-happyOut146 :: (HappyAbsSyn ) -> (AsmIn)-happyOut146 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut146 #-}-happyIn147 :: ([AsmOut]) -> (HappyAbsSyn )-happyIn147 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn147 #-}-happyOut147 :: (HappyAbsSyn ) -> ([AsmOut])-happyOut147 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut147 #-}-happyIn148 :: (RevList AsmOut) -> (HappyAbsSyn )-happyIn148 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn148 #-}-happyOut148 :: (HappyAbsSyn ) -> (RevList AsmOut)-happyOut148 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut148 #-}-happyIn149 :: (AsmOut) -> (HappyAbsSyn )-happyIn149 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn149 #-}-happyOut149 :: (HappyAbsSyn ) -> (AsmOut)-happyOut149 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut149 #-}-happyIn150 :: ([String]) -> (HappyAbsSyn )-happyIn150 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn150 #-}-happyOut150 :: (HappyAbsSyn ) -> ([String])-happyOut150 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut150 #-}-happyIn151 :: (RevList String) -> (HappyAbsSyn )-happyIn151 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn151 #-}-happyOut151 :: (HappyAbsSyn ) -> (RevList String)-happyOut151 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut151 #-}-happyIn152 :: (String) -> (HappyAbsSyn )-happyIn152 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn152 #-}-happyOut152 :: (HappyAbsSyn ) -> (String)-happyOut152 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut152 #-}-happyIn153 :: (Maybe Id) -> (HappyAbsSyn )-happyIn153 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn153 #-}-happyOut153 :: (HappyAbsSyn ) -> (Maybe Id)-happyOut153 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut153 #-}-happyIn154 :: ([Id]) -> (HappyAbsSyn )-happyIn154 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn154 #-}-happyOut154 :: (HappyAbsSyn ) -> ([Id])-happyOut154 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut154 #-}-happyIn155 :: (RevList Id) -> (HappyAbsSyn )-happyIn155 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn155 #-}-happyOut155 :: (HappyAbsSyn ) -> (RevList Id)-happyOut155 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut155 #-}-happyIn156 :: (Exp) -> (HappyAbsSyn )-happyIn156 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn156 #-}-happyOut156 :: (HappyAbsSyn ) -> (Exp)-happyOut156 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut156 #-}-happyIn157 :: (ObjCDictElem) -> (HappyAbsSyn )-happyIn157 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn157 #-}-happyOut157 :: (HappyAbsSyn ) -> (ObjCDictElem)-happyOut157 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut157 #-}-happyIn158 :: (RevList ObjCDictElem) -> (HappyAbsSyn )-happyIn158 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn158 #-}-happyOut158 :: (HappyAbsSyn ) -> (RevList ObjCDictElem)-happyOut158 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut158 #-}-happyIn159 :: (RevList Const) -> (HappyAbsSyn )-happyIn159 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn159 #-}-happyOut159 :: (HappyAbsSyn ) -> (RevList Const)-happyOut159 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut159 #-}-happyIn160 :: (RevList Id) -> (HappyAbsSyn )-happyIn160 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn160 #-}-happyOut160 :: (HappyAbsSyn ) -> (RevList Id)-happyOut160 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut160 #-}-happyIn161 :: (Stm) -> (HappyAbsSyn )-happyIn161 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn161 #-}-happyOut161 :: (HappyAbsSyn ) -> (Stm)-happyOut161 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut161 #-}-happyIn162 :: (RevList ObjCCatch) -> (HappyAbsSyn )-happyIn162 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn162 #-}-happyOut162 :: (HappyAbsSyn ) -> (RevList ObjCCatch)-happyOut162 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut162 #-}-happyIn163 :: (Exp) -> (HappyAbsSyn )-happyIn163 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn163 #-}-happyOut163 :: (HappyAbsSyn ) -> (Exp)-happyOut163 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut163 #-}-happyIn164 :: (ObjCRecv) -> (HappyAbsSyn )-happyIn164 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn164 #-}-happyOut164 :: (HappyAbsSyn ) -> (ObjCRecv)-happyOut164 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut164 #-}-happyIn165 :: (([ObjCArg], [Exp])) -> (HappyAbsSyn )-happyIn165 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn165 #-}-happyOut165 :: (HappyAbsSyn ) -> (([ObjCArg], [Exp]))-happyOut165 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut165 #-}-happyIn166 :: (Id) -> (HappyAbsSyn )-happyIn166 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn166 #-}-happyOut166 :: (HappyAbsSyn ) -> (Id)-happyOut166 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut166 #-}-happyIn167 :: (RevList ObjCArg) -> (HappyAbsSyn )-happyIn167 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn167 #-}-happyOut167 :: (HappyAbsSyn ) -> (RevList ObjCArg)-happyOut167 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut167 #-}-happyIn168 :: (ObjCArg) -> (HappyAbsSyn )-happyIn168 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn168 #-}-happyOut168 :: (HappyAbsSyn ) -> (ObjCArg)-happyOut168 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut168 #-}-happyIn169 :: (RevList Exp) -> (HappyAbsSyn )-happyIn169 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn169 #-}-happyOut169 :: (HappyAbsSyn ) -> (RevList Exp)-happyOut169 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut169 #-}-happyIn170 :: (Exp) -> (HappyAbsSyn )-happyIn170 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn170 #-}-happyOut170 :: (HappyAbsSyn ) -> (Exp)-happyOut170 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut170 #-}-happyIn171 :: (Definition) -> (HappyAbsSyn )-happyIn171 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn171 #-}-happyOut171 :: (HappyAbsSyn ) -> (Definition)-happyOut171 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut171 #-}-happyIn172 :: (Definition) -> (HappyAbsSyn )-happyIn172 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn172 #-}-happyOut172 :: (HappyAbsSyn ) -> (Definition)-happyOut172 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut172 #-}-happyIn173 :: (([Id], [ObjCIvarDecl], [ObjCIfaceDecl], Loc)) -> (HappyAbsSyn )-happyIn173 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn173 #-}-happyOut173 :: (HappyAbsSyn ) -> (([Id], [ObjCIvarDecl], [ObjCIfaceDecl], Loc))-happyOut173 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut173 #-}-happyIn174 :: (RevList Id) -> (HappyAbsSyn )-happyIn174 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn174 #-}-happyOut174 :: (HappyAbsSyn ) -> (RevList Id)-happyOut174 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut174 #-}-happyIn175 :: (RevList ObjCIvarDecl) -> (HappyAbsSyn )-happyIn175 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn175 #-}-happyOut175 :: (HappyAbsSyn ) -> (RevList ObjCIvarDecl)-happyOut175 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut175 #-}-happyIn176 :: (RevList ObjCIvarDecl) -> (HappyAbsSyn )-happyIn176 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn176 #-}-happyOut176 :: (HappyAbsSyn ) -> (RevList ObjCIvarDecl)-happyOut176 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut176 #-}-happyIn177 :: (ObjCVisibilitySpec) -> (HappyAbsSyn )-happyIn177 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn177 #-}-happyOut177 :: (HappyAbsSyn ) -> (ObjCVisibilitySpec)-happyOut177 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut177 #-}-happyIn178 :: ([ObjCIfaceDecl]) -> (HappyAbsSyn )-happyIn178 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn178 #-}-happyOut178 :: (HappyAbsSyn ) -> ([ObjCIfaceDecl])-happyOut178 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut178 #-}-happyIn179 :: (RevList ObjCIfaceDecl) -> (HappyAbsSyn )-happyIn179 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn179 #-}-happyOut179 :: (HappyAbsSyn ) -> (RevList ObjCIfaceDecl)-happyOut179 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut179 #-}-happyIn180 :: (ObjCIfaceDecl) -> (HappyAbsSyn )-happyIn180 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn180 #-}-happyOut180 :: (HappyAbsSyn ) -> (ObjCIfaceDecl)-happyOut180 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut180 #-}-happyIn181 :: (ObjCIfaceDecl) -> (HappyAbsSyn )-happyIn181 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn181 #-}-happyOut181 :: (HappyAbsSyn ) -> (ObjCIfaceDecl)-happyOut181 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut181 #-}-happyIn182 :: (RevList ObjCPropAttr) -> (HappyAbsSyn )-happyIn182 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn182 #-}-happyOut182 :: (HappyAbsSyn ) -> (RevList ObjCPropAttr)-happyOut182 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut182 #-}-happyIn183 :: (ObjCPropAttr) -> (HappyAbsSyn )-happyIn183 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn183 #-}-happyOut183 :: (HappyAbsSyn ) -> (ObjCPropAttr)-happyOut183 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut183 #-}-happyIn184 :: (ObjCMethodReq) -> (HappyAbsSyn )-happyIn184 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn184 #-}-happyOut184 :: (HappyAbsSyn ) -> (ObjCMethodReq)-happyOut184 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut184 #-}-happyIn185 :: (ObjCMethodProto) -> (HappyAbsSyn )-happyIn185 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn185 #-}-happyOut185 :: (HappyAbsSyn ) -> (ObjCMethodProto)-happyOut185 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut185 #-}-happyIn186 :: ((Maybe Type, [Attr], [ObjCParam], Bool)) -> (HappyAbsSyn )-happyIn186 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn186 #-}-happyOut186 :: (HappyAbsSyn ) -> ((Maybe Type, [Attr], [ObjCParam], Bool))-happyOut186 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut186 #-}-happyIn187 :: ([ObjCParam]) -> (HappyAbsSyn )-happyIn187 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn187 #-}-happyOut187 :: (HappyAbsSyn ) -> ([ObjCParam])-happyOut187 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut187 #-}-happyIn188 :: (RevList ObjCParam) -> (HappyAbsSyn )-happyIn188 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn188 #-}-happyOut188 :: (HappyAbsSyn ) -> (RevList ObjCParam)-happyOut188 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut188 #-}-happyIn189 :: (ObjCParam) -> (HappyAbsSyn )-happyIn189 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn189 #-}-happyOut189 :: (HappyAbsSyn ) -> (ObjCParam)-happyOut189 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut189 #-}-happyIn190 :: (Definition) -> (HappyAbsSyn )-happyIn190 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn190 #-}-happyOut190 :: (HappyAbsSyn ) -> (Definition)-happyOut190 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut190 #-}-happyIn191 :: ((Id, Loc)) -> (HappyAbsSyn )-happyIn191 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn191 #-}-happyOut191 :: (HappyAbsSyn ) -> ((Id, Loc))-happyOut191 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut191 #-}-happyIn192 :: (Definition) -> (HappyAbsSyn )-happyIn192 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn192 #-}-happyOut192 :: (HappyAbsSyn ) -> (Definition)-happyOut192 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut192 #-}-happyIn193 :: (([ObjCIvarDecl], [Definition], Loc)) -> (HappyAbsSyn )-happyIn193 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn193 #-}-happyOut193 :: (HappyAbsSyn ) -> (([ObjCIvarDecl], [Definition], Loc))-happyOut193 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut193 #-}-happyIn194 :: (([Definition], Loc)) -> (HappyAbsSyn )-happyIn194 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn194 #-}-happyOut194 :: (HappyAbsSyn ) -> (([Definition], Loc))-happyOut194 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut194 #-}-happyIn195 :: ([Definition]) -> (HappyAbsSyn )-happyIn195 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn195 #-}-happyOut195 :: (HappyAbsSyn ) -> ([Definition])-happyOut195 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut195 #-}-happyIn196 :: (RevList Definition) -> (HappyAbsSyn )-happyIn196 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn196 #-}-happyOut196 :: (HappyAbsSyn ) -> (RevList Definition)-happyOut196 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut196 #-}-happyIn197 :: (Definition) -> (HappyAbsSyn )-happyIn197 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn197 #-}-happyOut197 :: (HappyAbsSyn ) -> (Definition)-happyOut197 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut197 #-}-happyIn198 :: (RevList (Id, Maybe Id)) -> (HappyAbsSyn )-happyIn198 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn198 #-}-happyOut198 :: (HappyAbsSyn ) -> (RevList (Id, Maybe Id))-happyOut198 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut198 #-}-happyIn199 :: (Definition) -> (HappyAbsSyn )-happyIn199 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn199 #-}-happyOut199 :: (HappyAbsSyn ) -> (Definition)-happyOut199 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut199 #-}-happyIn200 :: (Definition) -> (HappyAbsSyn )-happyIn200 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn200 #-}-happyOut200 :: (HappyAbsSyn ) -> (Definition)-happyOut200 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut200 #-}-happyIn201 :: (Definition) -> (HappyAbsSyn )-happyIn201 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn201 #-}-happyOut201 :: (HappyAbsSyn ) -> (Definition)-happyOut201 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut201 #-}-happyIn202 :: (ExeConfig) -> (HappyAbsSyn )-happyIn202 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyIn202 #-}-happyOut202 :: (HappyAbsSyn ) -> (ExeConfig)-happyOut202 x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOut202 #-}-happyInTok :: ((L T.Token)) -> (HappyAbsSyn )-happyInTok x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyInTok #-}-happyOutTok :: (HappyAbsSyn ) -> ((L T.Token))-happyOutTok x = Happy_GHC_Exts.unsafeCoerce# x-{-# INLINE happyOutTok #-}---happyActOffsets :: HappyAddr-happyActOffsets = HappyA# "\x9f\x35\x06\x11\xf6\x16\xa1\x1b\x0c\x2b\x8e\x17\x5e\x16\xc6\x15\xd6\x2b\x3a\x29\x93\x28\xac\x05\xac\x05\x00\x00\x8e\x17\x81\xff\x00\x00\x00\x00\x9f\x35\x60\x20\x8b\x20\xff\xff\xfc\xff\x54\x1d\x6e\x1f\xed\x09\x00\x00\x00\x00\x00\x00\xe1\x09\x2f\x09\x00\x00\x9f\x35\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf1\x09\x90\x02\xed\x08\x00\x00\xa8\x06\x7a\x07\x69\x07\x38\x05\x4f\x07\xd0\x09\xcc\x09\xb7\x09\xad\x09\x6d\x02\x00\x00\x00\x00\xc1\x09\x00\x00\x47\x09\x00\x00\x2b\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7c\x06\x54\x1d\x9f\x35\x9f\x35\x9f\x35\x9f\x35\x9f\x35\x68\x1c\xf8\x34\xf8\x34\x51\x34\xaa\x33\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc2\x09\x00\x00\xdf\x1f\x00\x00\xab\x02\x2a\x09\xd4\x00\xd4\x00\x00\x00\x00\x00\x00\x00\x2a\x09\xbe\x09\x21\x09\x7e\x00\x00\x00\xa1\x09\x1e\x09\x00\x00\xbd\x09\xfb\x08\xfb\x08\xd3\x0c\xfb\x08\xa6\x0e\xfb\x08\x2e\x09\x00\x00\x6e\x38\x00\x00\x00\x00\x02\x4d\x95\x3b\x00\x00\x45\x3b\x00\x00\x4a\x39\x00\x00\x00\x00\x95\x3b\xf9\x08\x00\x00\x9f\x09\x00\x00\x00\x00\x00\x00\x00\x00\x4a\x39\xc6\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x88\x1a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbc\x09\x00\x00\xba\x09\x00\x00\x9c\x09\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x08\xd6\x0f\xb1\x09\x83\x03\x00\x00\xb0\x09\x45\x27\x00\x00\x6e\x10\x00\x00\x00\x00\xd6\x08\xac\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x00\x03\x33\x31\x00\xd8\x01\x3a\x29\x9b\x09\x5e\x19\xc0\x03\x7e\x26\x99\x09\x98\x09\x00\x00\x3a\x29\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x01\x00\x44\x09\x38\x1f\xb8\xff\x6e\x10\xb8\xff\xc9\x08\x00\x00\x29\x09\xc8\x08\xec\x27\x00\x00\xc8\x08\x3a\x29\x36\x23\x88\x2a\x00\x00\xc8\x08\xb8\xff\x00\x00\x1a\x38\xc8\x08\x87\x09\x00\x00\x00\x00\x00\x00\xc6\x08\x1a\x38\xc6\x08\x67\x09\xc5\x08\x00\x00\x00\x00\xc5\x08\xb3\x37\x00\x00\x84\x1c\xde\x0e\x00\x00\xce\x37\xce\x37\xc5\x08\x00\x00\x45\x27\x3f\x49\xc5\x08\x00\x00\x00\x00\x00\x00\x00\x00\xd3\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x04\x16\x00\x03\x33\x58\x2c\x58\x2c\x8a\x3a\x8a\x3a\x58\x2c\x00\x00\x00\x00\x58\x2c\xb8\xff\x58\x2c\x45\x3b\x95\x3b\x00\x00\xfd\x08\x00\x00\x55\x09\x00\x00\x00\x00\xc1\x06\x00\x00\xb3\x06\x1d\x03\x96\x39\x00\x00\x00\x00\x6e\x38\xc3\x04\xc3\x04\x00\x00\x61\x07\x00\x00\xf8\x00\x03\x33\x61\x07\xde\x0e\x00\x00\x00\x00\xde\x0e\x00\x00\x61\x07\x1b\x09\x03\x33\x00\x00\x00\x00\xa1\x06\x00\x00\x00\x00\x29\x39\x00\x00\x98\x06\x00\x00\xb4\x09\x75\x02\x00\x00\x2e\x15\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb9\x03\xd6\x2b\x7c\x02\x00\x00\x54\x1d\x58\x2c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xff\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x53\x1e\x00\x00\x03\x33\x5c\x32\x89\x06\x89\x06\x6a\x09\x6b\x09\x00\x00\x69\x09\x68\x09\x60\x09\xd6\x25\x5b\x09\x00\x00\xa5\x01\x00\x00\x03\x33\x03\x33\x80\x03\x00\x00\x00\x00\x00\x00\x03\x33\x22\x00\x00\x00\xa4\x01\x0b\x09\x00\x00\x8e\x22\x00\x00\x00\x00\x00\x00\x00\x00\xee\x00\x00\x00\x00\x00\xd3\x00\x00\x00\x6e\x10\x00\x00\x00\x00\xce\x02\x00\x00\x00\x00\x00\x00\x3e\x21\x00\x00\x00\x00\x58\x2c\x4c\x07\x57\x09\x37\x09\x00\x00\x00\x00\x4e\x09\x59\x26\x76\x39\x00\x00\x58\x2c\x00\x00\x4e\x09\x0c\x1b\xd5\x38\x45\x3b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\x14\x77\x1a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x09\xec\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x01\x03\x33\xf2\x36\x58\x2c\xd4\x08\xbd\x1b\x2e\x00\x10\x20\xd4\x08\xbd\x1b\xd4\x08\x4b\x09\x00\x00\x03\x33\x00\x00\x7c\x06\x00\x00\x00\x00\x7c\x06\x00\x00\x45\x03\x4b\x09\xfe\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf3\x1d\xac\x04\x45\x03\xab\x03\x4a\x09\x45\x03\x45\x03\x45\x09\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x03\x33\x86\x24\x26\x27\x61\x3a\x61\x3a\x00\x00\x00\x00\xb5\x31\x00\x00\x00\x00\x03\x33\x00\x00\x35\x09\x00\x00\x29\x00\x00\x00\x00\x00\x00\x00\x85\x04\x00\x00\xa6\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa8\x06\xa8\x06\x55\x07\x55\x07\x41\x07\x41\x07\x41\x07\x41\x07\x38\x05\x38\x05\x34\x07\x18\x09\x22\x09\x15\x09\x0f\x09\xce\x05\x00\x00\xcd\x05\x00\x00\x3e\x0f\x00\x00\x00\x00\x00\x00\x0e\x31\x00\x00\x00\x00\x00\x00\x25\x09\x1d\x09\xcc\x1e\x00\x00\x00\x00\x23\x09\x00\x00\xa4\x08\x0e\x09\x69\x03\x16\x09\x00\x00\x00\x00\x0c\x09\x00\x00\x04\x09\x05\x09\x8b\x20\x00\x00\x00\x00\x58\x2c\xbd\x1b\x09\x09\x00\x00\x00\x00\x00\x09\x00\x00\x58\x2c\x58\x2c\x00\x00\x00\x00\x00\x00\x00\x00\x30\x1d\xb8\xff\x02\x09\x7d\x1d\x00\x00\x00\x00\xad\x4c\x95\x3b\x00\x00\x45\x3b\x00\x00\x95\x3b\x00\x00\xce\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\x08\xe2\x19\xdc\x04\x00\x00\x00\x00\xe2\x19\x00\x00\x8d\x02\x00\x00\x4a\x07\x00\x00\x00\x00\xb1\x25\x58\x2c\x64\x37\xfc\x08\x1f\x03\x76\x02\x00\x00\x62\x00\x00\x00\xd5\x08\x79\x08\xad\x06\x00\x00\xf4\x08\x00\x00\x00\x00\xf7\x08\x00\x00\x00\x00\xe6\x21\x00\x00\x00\x00\xf3\x08\xf1\x08\xe8\x08\x03\x33\x00\x00\x00\x00\x00\x00\x8e\x04\x00\x00\x00\x00\x86\x04\x3a\x04\xf6\x08\xf0\x08\x00\x00\x46\x03\x00\x00\x00\x00\x03\x33\x80\x36\x58\x2c\xbd\x1b\x00\x00\x00\x00\x00\x00\x8e\x02\x00\x00\x00\x00\xdf\x04\x00\x00\x19\x07\x00\x00\x00\x00\x00\x00\x00\x00\xef\x08\xee\x08\x00\x00\x03\x33\x00\x00\x00\x00\x00\x00\x00\x00\xde\x23\x00\x00\x00\x00\xc2\x08\x1c\x08\x00\x00\x00\x00\x67\x30\xec\x08\xf4\x02\x89\x38\xea\x08\xc4\x08\xe9\x02\xb4\x09\x00\x00\x00\x00\x36\x12\xc0\x05\xad\x05\x21\x05\x00\x00\x9a\x0b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xce\x37\xde\x0e\x1b\x09\x00\x00\x00\x00\x48\x08\x03\x33\x00\x00\x00\x00\xc3\x04\x00\x00\xc3\x04\x2c\x00\x11\x05\x00\x00\xf8\x0a\x00\x00\x56\x0a\x6e\x38\x58\x2c\x00\x00\x45\x3b\xb4\x01\x00\x00\x14\x07\x09\x0e\x00\x00\x41\x04\x79\x02\xc3\x08\x3e\x08\x14\x07\x00\x00\x00\x00\x58\x2c\xbf\x08\xb5\x3a\x00\x00\xbd\x08\x36\x3a\xb8\x18\x00\x00\x00\x00\x58\x2c\x36\x3a\xb2\x02\x00\x00\x00\x00\x03\x00\x00\x00\xbe\x08\xc4\x04\x00\x00\xbc\x08\xb6\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbb\x08\x3e\x04\x00\x00\xb9\x08\x00\x00\x15\x3a\x00\x00\x00\x00\x9e\x11\x00\x00\x17\x05\x00\x00\x00\x00\xb6\x08\xec\x08\x00\x00\x98\x08\x00\x00\xc0\x2f\x03\x33\x00\x00\x00\x00\xd6\x2b\x00\x00\x00\x00\x00\x00\x00\x00\x19\x2f\x00\x00\x00\x00\x72\x2e\x93\x08\x89\x08\x0e\x36\x9d\x04\x00\x00\x08\x04\x00\x00\x00\x00\x19\x08\x91\x08\x1e\x04\x00\x00\x3a\x29\x00\x00\x3a\x29\x00\x00\x3a\x29\x7d\x08\x03\x33\x03\x33\x00\x00\x00\x00\x00\x00\x7e\x08\xe7\x04\x05\x08\x05\x08\xd6\x2b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6d\x03\x00\x00\x7f\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x01\xf3\x06\x00\x00\x09\x25\x00\x00\x47\x04\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x19\xe2\x19\xb8\xff\x00\x00\x00\x00\x00\x00\x45\x3b\x00\x00\x00\x00\x00\x00\x45\x3b\x95\x3b\x00\x00\x77\x08\x00\x00\x00\x00\x00\x00\x3d\x03\x00\x00\x00\x00\x49\x08\xd6\x3a\xea\x06\x00\x00\x00\x08\x6a\x08\x00\x00\x00\x00\x5e\x08\xff\x07\x8e\x17\x00\x00\x63\x08\x63\x08\x61\x08\xe8\x07\x00\x00\x5d\x08\x00\x00\x00\x00\x88\x2a\x00\x00\x03\x33\x00\x00\x00\x00\xcb\x2d\x00\x00\x00\x00\x62\x08\x2f\x2b\x00\x00\x00\x00\x00\x00\xe9\x06\x03\x33\x57\x08\x00\x00\x58\x08\x10\x20\x00\x00\xdc\x07\x58\x2c\x00\x00\x32\x08\x00\x00\x58\x2c\xa1\x1b\x60\x20\x00\x00\x45\x3b\x00\x00\xb2\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x2d\x53\x08\x64\x37\x00\x00\xd6\x07\x4f\x08\x00\x00\x00\x00\x32\x04\x45\x08\x7d\x2c\x07\x08\x00\x00\x00\x00\x3c\x08\x98\x04\x3d\x08\x6c\x00\x3b\x08\x00\x00\x00\x00\x31\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x39\x08\x00\x00\x00\x00\x37\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xea\x39\x00\x00\x34\x08\x36\x08\x00\x00\x3b\x0c\x00\x00\x29\x08\x23\x18\x00\x00\x00\x00\x46\x04\x13\x08\x00\x00\x2c\x08\x0d\x08\x00\x00\x00\x00\x00\x00\x0d\x08\x6c\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x08\x00\x00\x00\x00\x00\x00\x5d\x03\x00\x00\x00\x00\x08\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x25\x08\x20\x08\x1e\x08\xec\x02\x1d\x08\x00\x00\x2a\x08\x58\x2c\x00\x00\x3a\x29\x1c\x03\x3a\x29\x2e\x25\x00\x00\x1b\x08\x00\x00\x00\x00\x00\x00\xda\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x58\x2c\x00\x00\x58\x2c\x1a\x08\x00\x00\x00\x00\x00\x00\x00\x00\xe1\x29\xfe\x03\x00\x00\x00\x00\x00\x00\x00\x00\x11\x08\x00\x00\x00\x00\x00\x00\x00\x00\xf1\x03\x00\x00\x3a\x29\x00\x00\x3a\x29\x00\x00\x18\x08\xfb\x07\xfa\x07\xf2\x07\x94\x04\xc7\x01\x00\x00\x66\x13\x00\x00\x00\x00\x00\x00\x00\x00\x89\x02\x00\x00\x00\x00\xf9\x07\xf5\x07\xf0\x07\xef\x07\x00\x00\xfd\x07\x4a\x02\x00\x00\x00\x00\x58\x2c\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x29\x00\x00\x00\x00\xf1\x07\xea\x07\xf8\x07\xee\x07\xeb\x07\xf4\x07\xe6\x07\xe6\x07\x00\x00\x00\x00\xc5\x07\xc3\x07\x00\x00\x00\x00\x00\x00\x03\x33\xc7\x07\x00\x00\x00\x00\xc0\x07\xd5\x00\xca\x07\x58\x2c\x00\x00\xbf\x07\xb7\x07\x00\x00\x00\x00\x00\x00\x58\x2c\xb2\x07\x00\x00\x00\x00\x00\x00"#--happyGotoOffsets :: HappyAddr-happyGotoOffsets = HappyA# "\xfc\x48\x4a\x3c\xa3\x16\xcf\x13\xb7\x01\x2a\x2d\x40\x43\x94\x42\x14\x34\xe9\x45\x03\x3f\xb6\x3d\x32\x3d\x92\x06\x1c\x1a\x2a\x07\x5d\x06\x20\x06\x78\x48\x6b\x00\x89\x01\x25\x07\x1e\x01\x6d\x33\xf4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xce\x4c\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaf\x40\x38\x33\xd9\x15\x41\x15\xa9\x14\x11\x14\x79\x13\xd4\x0e\xa1\x17\x09\x17\xe1\x12\x71\x16\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x05\x00\x00\xe4\x00\x00\x00\x85\x02\x4c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4e\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfc\x23\x00\x00\x3a\x08\x00\x00\x00\x00\x00\x00\x65\x08\x00\x00\x00\x00\x4d\x03\x5d\x02\x00\x00\x90\x07\x00\x00\x51\x02\x00\x00\x00\x00\x21\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x02\xce\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x89\x3b\x00\x00\x00\x00\x00\x00\x00\x00\x6d\x0c\x00\x00\x37\x17\x00\x00\x00\x00\x00\x00\x3a\x3e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6a\x07\x00\x00\x00\x00\xb6\x4c\x00\x00\x00\x00\xc1\x45\x00\x00\xbc\x07\x00\x00\x5e\x48\x00\x00\x00\x00\x00\x00\x3d\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x45\x49\x07\x4d\x05\x64\x07\xd7\x14\x63\x07\x00\x00\x00\x00\x00\x00\x00\x00\x75\x40\x00\x00\x00\x00\x91\x44\x69\x44\x8e\x2d\x00\x00\x00\x00\x62\x07\x00\x00\x4c\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xac\x02\x00\x00\x00\x00\x00\x00\x00\x00\x83\x07\x00\x00\x85\x0a\x00\x00\x8c\x04\x75\x03\x00\x00\x11\x0c\xc9\x0b\x00\x00\x00\x00\x2a\x0b\x4d\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9d\x4c\xc3\x01\xa6\x07\xa7\x06\x9d\x06\xa5\x07\x00\x00\x0d\x07\x86\x01\x48\x07\x81\x01\x0f\x05\xe4\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x59\x07\x00\x00\x51\x07\xbc\x46\x1c\x02\x00\x00\x00\x00\x8b\x02\x32\x03\x17\x03\x00\x00\x94\x07\x00\x00\x2a\x06\x19\x4c\x8c\x07\x5d\x07\x5a\x07\x00\x00\x61\x03\x00\x00\x88\x07\x2d\x06\x64\x2b\x00\x00\x00\x00\x44\x07\x00\x00\x00\x00\x7a\x03\x00\x00\x3b\x07\x00\x00\x5b\x4d\x91\x32\x00\x00\xa6\x35\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x78\x31\x28\x07\x00\x00\xaa\x1b\x75\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd7\x30\x00\x00\x44\x48\x2b\x48\x65\x07\x56\x07\xdd\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x48\xdb\x06\x00\x00\x00\x00\x00\x00\x8d\x47\x73\x47\x00\x00\x00\x00\x00\x00\x00\x00\x59\x47\x00\x00\x00\x00\xbe\x3e\x00\x00\x00\x00\xe5\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xae\x3c\x00\x00\x0a\x09\x00\x00\x00\x00\xed\x04\x00\x00\x00\x00\x00\x00\x87\x3f\x00\x00\x00\x00\x41\x01\xf4\x3e\x00\x00\x00\x00\x00\x00\x00\x00\x29\x07\x87\x01\x7c\x00\x00\x00\x08\x01\x00\x00\x05\x07\x37\x0e\x11\x02\x31\x07\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe4\x11\x37\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfe\x06\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4c\x32\x00\xd6\x06\x61\x06\xfd\x12\xf3\x05\x16\x02\xb1\x05\x9f\x12\xae\x05\x48\x06\x00\x00\xe7\x4b\x00\x00\x25\x40\x00\x00\x00\x00\xa1\x3f\x00\x00\x04\x05\x2e\x06\x2f\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf9\x00\x00\x00\xf5\x04\x00\x00\x00\x00\x8b\x04\xeb\x03\x8c\x06\x3f\x47\xc7\x18\x87\x1a\xa4\x06\x74\x07\x8b\x08\x64\x0d\xcb\x0c\x9e\x0e\x01\x0e\x46\x08\xa2\x02\xe9\x0f\xce\x0f\x81\x10\xd7\x05\x49\x12\xb1\x11\x19\x11\xce\x4b\xb5\x4b\x31\x4b\x18\x4b\xff\x4a\xe6\x4a\xcd\x4a\x49\x4a\x30\x4a\x17\x4a\xfe\x49\xbb\x46\xa1\x46\x62\x06\x58\x06\x00\x00\x00\x00\x53\x04\x00\x00\x00\x00\xe5\x49\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd2\x01\x00\x00\x5b\x3c\x00\x00\x00\x00\x00\x00\xd0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x71\x00\x00\x00\x00\x00\x00\x00\x00\x00\x53\x05\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x45\x01\x00\x00\x00\x00\x66\x06\x67\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x07\x01\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x20\x00\xde\x05\x00\x00\x97\x05\x00\x00\x00\x00\xb3\x02\x22\x02\x00\x00\xe8\x03\x00\x00\x97\x03\x00\x00\xab\x13\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1d\x06\x9a\x0d\x6f\x11\x00\x00\x00\x00\x04\x0d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x37\x00\x35\x00\x8d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x80\x05\x00\x00\x00\x00\xbe\x05\x1d\x01\x00\x00\x00\x00\x00\x00\x6e\x05\x00\x00\x00\x00\x00\x00\xbd\x43\x00\x00\x00\x00\x00\x00\x00\x00\x7a\x05\x83\x2f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x06\x00\x00\xea\x04\x00\x00\x00\x00\x00\x00\x87\x46\x2a\x00\x6a\x05\x35\x11\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x97\x27\x00\x00\x00\x00\x00\x00\x00\x00\x35\x2e\x00\x00\x00\x00\x00\x00\x70\x3e\x00\x00\x00\x00\xa8\x04\x9c\x30\x00\x00\xde\x01\x00\x00\x00\x00\x00\x00\xeb\x29\x00\x00\x00\x00\x27\x3a\x19\x05\x16\x05\xe4\x04\x00\x00\xe9\x41\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x06\xfa\x04\x2d\x06\x00\x00\x00\x00\xb2\x04\xef\x17\x00\x00\x00\x00\x59\x03\x00\x00\x1b\x02\x00\x00\xd8\x04\x00\x00\xbf\x31\x00\x00\xca\x2f\x01\x09\x02\x05\x00\x00\x31\x07\x00\x00\x00\x00\xee\x04\x3a\x08\x00\x00\xaa\x00\x85\x05\x00\x00\x00\x00\xd3\x04\x00\x00\x00\x00\xb9\x04\x81\x04\xa3\x04\x00\x00\x19\x00\xc7\x05\x7e\x03\xd9\x02\x00\x00\x99\x04\xbc\x05\x00\x00\x00\x00\x00\x00\xe3\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x03\x00\x00\x00\x00\xa6\x35\x00\x00\x0a\x04\x00\x00\x00\x00\x00\x00\xec\x3d\x00\x00\x00\x00\x00\x00\xa8\x04\x61\x49\x00\x00\x00\x00\x0b\x2c\x00\x00\x00\x00\x00\x00\x00\x00\x68\x3d\x00\x00\x00\x00\x48\x49\x00\x00\x00\x00\x2f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x05\x00\x00\x00\x00\x39\x43\x00\x00\x11\x43\x00\x00\x8d\x42\x23\x04\xdc\x2e\x6d\x46\x00\x00\x00\x00\x00\x00\x00\x00\x34\x05\x71\x04\xaf\x03\xbd\x2a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x09\x01\x00\x00\xd7\x10\x00\x00\x00\x00\x00\x00\x00\x00\xd7\x10\xe3\x09\xba\x03\x00\x00\x00\x00\x00\x00\x31\x07\x00\x00\x00\x00\x00\x00\x93\x02\x5e\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x04\xf5\x03\x00\x00\x28\x05\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x05\x8c\x24\x00\x00\x01\x04\x01\x04\x9c\x03\x0b\x05\x00\x00\x00\x00\x00\x00\x00\x00\xf0\x24\x00\x00\xe8\x04\x00\x00\x00\x00\x2f\x49\x00\x00\x00\x00\x00\x00\xc2\x38\x00\x00\x00\x00\x00\x00\x00\x00\x16\x49\x67\x03\x00\x00\x00\x00\x43\x01\x00\x00\x05\x05\x48\x03\x00\x00\x00\x00\x00\x00\x20\x03\x9c\x10\x1d\x00\x00\x00\x31\x07\x00\x00\x07\x10\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4f\x37\x00\x00\xb2\x01\x00\x00\x37\x03\x00\x00\x00\x00\x00\x00\x00\x00\x5f\x03\x6b\x36\x00\x00\x00\x00\x00\x00\x00\x00\x5b\x03\x00\x00\x00\x00\xa1\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x6c\x04\x00\x00\x70\x00\x00\x00\x00\x00\xfc\x23\x00\x00\xcc\x02\xf6\x03\x00\x00\x00\x00\x00\x00\xb0\x03\xff\x01\x00\x00\x44\x03\x00\x00\x00\x00\x00\x00\x22\x03\x3a\x08\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x02\x00\x00\x00\x00\x00\x00\x00\x00\xb3\x01\x00\x00\x2a\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xca\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0f\x02\x00\x00\x65\x42\x00\x00\xe1\x41\x62\x35\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf6\x01\x00\x00\xcb\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x35\x2e\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb9\x41\x00\x00\x35\x41\x00\x00\x00\x00\x00\x00\x7b\x03\x00\x00\xa6\x03\x5a\x03\x00\x00\xf5\x18\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x01\x00\x00\x00\x00\x00\x00\x00\x00\xff\x40\x00\x00\x00\x00\x00\x00\x00\x00\xf2\x04\x00\x00\xd1\x00\xd2\x04\x95\x00\x55\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbb\x34\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xf9\xff\x81\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\x00\x00\x00\x00\x00\x00\x00\x00\x00"#--happyDefActions :: HappyAddr-happyDefActions = HappyA# "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe4\xfd\x00\x00\x00\x00\x16\xfd\xe5\xfc\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe6\xff\xcb\xff\x70\xfd\x00\x00\x00\x00\xca\xff\x00\x00\x6f\xfd\x6e\xfd\x6d\xfd\x6c\xfd\x6b\xfd\x6a\xfd\x69\xfd\x68\xfd\x67\xfd\x66\xfd\x65\xfd\x64\xfd\x63\xfd\x62\xfd\x61\xfd\x60\xfd\x5e\xfd\x5d\xfd\x5c\xfd\x5a\xfd\x59\xfd\x58\xfd\x57\xfd\x56\xfd\x55\xfd\x54\xfd\x53\xfd\x51\xfd\x50\xfd\x4f\xfd\x4e\xfd\x4d\xfd\x52\xfd\xe5\xff\x5f\xfd\x5b\xfd\x4c\xfd\xc9\xff\xe4\xff\xe3\xff\xe2\xff\xe1\xff\xe0\xff\xdf\xff\xde\xff\xdd\xff\xdb\xff\xdc\xff\xda\xff\xd9\xff\xd8\xff\xd7\xff\xd6\xff\xd5\xff\xd4\xff\xd3\xff\xd2\xff\xd1\xff\xd0\xff\xcf\xff\xce\xff\xcd\xff\xcc\xff\x4b\xfd\x4a\xfd\x49\xfd\x43\xfd\xb1\xff\xb0\xff\xa2\xff\xaf\xff\xa7\xff\x8c\xff\x80\xff\x7d\xff\x79\xff\x76\xff\x73\xff\x6e\xff\x6b\xff\x69\xff\x67\xff\x65\xff\x63\xff\x61\xff\x5f\xff\x53\xff\x74\xfd\xaa\xff\x3c\xfd\xa9\xff\x00\x00\xa8\xff\xc2\xff\xa6\xff\xc8\xff\xc7\xff\xc6\xff\xc5\xff\xc4\xff\xc3\xff\x76\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\xfd\x00\x00\x00\x00\x00\x00\x00\x00\xc1\xff\xc0\xff\xbf\xff\xbe\xff\xbd\xff\xbc\xff\xbb\xff\xba\xff\xb9\xff\xb8\xff\xb7\xff\xb6\xff\xab\xff\x00\x00\x75\xfd\x00\x00\x73\xfd\x00\x00\x00\x00\xc7\xfd\xc7\xfd\xfe\xfc\xd3\xfc\xd2\xfc\x00\x00\x00\x00\x00\x00\xc7\xfd\xf0\xfc\x04\xfd\x00\x00\x03\xfd\x00\x00\x00\x00\x00\x00\xe6\xfc\x00\x00\x17\xfd\x00\x00\x00\x00\x0a\xfd\x00\x00\x42\xff\x41\xff\x3b\xff\x20\xff\x1f\xff\x3a\xff\xfb\xfe\x00\x00\xfa\xfe\x1e\xff\x30\xff\x00\x00\x1d\xff\x57\xfe\x0e\xff\x03\xff\xc5\xfe\xfe\xfe\x00\x00\x0b\xff\xff\xfe\x01\xff\x00\xff\x0d\xff\x02\xff\xfd\xfe\x0c\xff\xec\xfe\x09\xff\xeb\xfe\xfc\xfe\x04\xff\xc4\xfe\x00\x00\x3c\xff\x44\xff\xc3\xfe\xc2\xfe\xf9\xfe\xf8\xfe\xf7\xfe\x00\x00\xf6\xfe\x00\x00\x08\xff\x4f\xfe\x07\xff\x06\xff\x05\xff\xc1\xfe\xc0\xfe\xbf\xfe\xbe\xfe\xbd\xfe\xbc\xfe\xbb\xfe\xba\xfe\xb9\xfe\xb8\xfe\xb7\xfe\xb6\xfe\xb5\xfe\xb4\xfe\xb3\xfe\xb2\xfe\xb1\xfe\xb0\xfe\xaf\xfe\xae\xfe\xad\xfe\x00\x00\xe5\xfd\xb1\xff\x00\x00\x10\xfe\x00\x00\x00\x00\x14\xfe\x00\x00\x3d\xfe\x3c\xfe\x00\x00\x18\xfe\x16\xfe\x3b\xfe\x3a\xfe\x39\xfe\x38\xfe\x31\xfe\x30\xfe\x06\xfe\x04\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x37\xfe\x2f\xfe\x49\xff\x0f\xfe\x0d\xfe\x0c\xfe\x32\xfe\x0e\xfe\x33\xfe\x00\x00\xab\xfd\x00\x00\x0b\xfe\x00\x00\x09\xfe\x00\x00\x2a\xfe\x2d\xfe\x00\x00\x2c\xfe\x29\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x4d\xfe\x00\x00\xb5\xff\x48\xfe\x71\xfe\x00\x00\x76\xfe\x75\xfe\x6e\xfe\x74\xfe\x00\x00\x6d\xfe\x00\x00\xc8\xfe\x00\x00\xc6\xfe\xdb\xfe\x00\x00\x00\x00\x7a\xfe\x00\x00\xdf\xfe\xe2\xfe\x00\x00\x00\x00\x00\x00\xe0\xfd\x00\x00\x3b\xff\x00\x00\xe1\xfd\xdc\xfd\xdb\xfd\xda\xfd\x26\xfd\xd9\xfd\xd8\xfd\xdf\xfd\xde\xfd\xdd\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xee\xfc\x16\xfd\x00\x00\xb3\xff\x00\x00\x38\xff\x2e\xff\x43\xff\x00\x00\xaa\xfe\x4b\xff\x13\xff\x99\xfe\xac\xfe\x98\xfe\xa3\xfe\x00\x00\x00\x00\x4a\xff\xa1\xfe\x00\x00\x82\xfe\x7e\xfe\x9a\xfe\x00\x00\xd7\xfe\xd5\xfe\x00\x00\x00\x00\xde\xfe\xdb\xfe\x79\xfe\xdd\xfe\xe5\xfe\x00\x00\xe1\xfe\x00\x00\x8e\xfe\x8d\xfe\x97\xfe\x6c\xfe\x5d\xfe\x62\xfe\x6b\xfe\x61\xfe\x95\xfe\x00\x00\x00\x00\x8f\xfe\x00\x00\x70\xfe\x6f\xfe\xb4\xff\x2f\xfe\x2e\xfe\x47\xfe\x00\x00\x00\x00\x00\x00\x41\xfe\x00\x00\x00\x00\x46\xfe\x35\xfe\x34\xfe\x36\xfe\x27\xfe\x2b\xfe\x26\xfe\x28\xfe\x07\xfe\x08\xfe\x0a\xfe\x3f\xfd\x00\x00\x89\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3b\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\xfd\x00\x00\xaa\xfd\x00\x00\x00\x00\x00\x00\xe8\xfd\xe9\xfd\xff\xfd\x00\x00\x00\x00\xef\xfd\x00\x00\x00\x00\x1f\xfe\x00\x00\xec\xfd\xed\xfd\x80\xff\x4f\xff\x00\x00\xea\xfd\xeb\xfd\x00\x00\x11\xfe\x17\xfe\x13\xfe\x15\xfe\x00\x00\x4e\xff\x02\xfe\x03\xfe\x00\x00\xe3\xfd\xe2\xfd\x00\x00\x00\x00\x00\x00\x55\xfe\x53\xfe\x0a\xff\xd1\xfe\x00\x00\x00\x00\xc5\xfd\x00\x00\x2f\xff\xf5\xfe\x00\x00\x00\x00\x39\xff\x28\xff\x27\xff\x26\xff\x25\xff\x1c\xff\x1b\xff\x1a\xff\x00\x00\x00\x00\x15\xfd\x0e\xfd\x14\xfd\x11\xfd\x10\xfd\x00\x00\x00\x00\x0d\xfd\x13\xfd\x12\xfd\xe3\xfc\xe4\xfc\xe2\xfc\xe1\xfc\xe0\xfc\xdf\xfc\xde\xfc\xdd\xfc\xdc\xfc\x00\x00\x00\x00\x00\x00\x00\x00\xc6\xfd\x00\x00\xc7\xfd\x00\x00\xc7\xfd\x00\x00\xc7\xfd\x00\x00\xd4\xfc\x00\x00\x83\xff\x00\x00\x84\xff\x8a\xff\x00\x00\x8b\xff\x00\x00\x00\x00\x00\x00\x89\xff\x85\xff\x88\xff\x86\xff\x87\xff\x00\x00\x00\x00\x67\xfe\x00\x00\x00\x00\x68\xfe\x64\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x95\xff\x94\xff\x00\x00\xa5\xff\x45\xfd\x00\x00\x44\xfd\xd0\xfc\x90\xff\x00\x00\x8f\xff\x96\xff\x97\xff\x00\x00\xa1\xff\x00\x00\x9f\xff\x9e\xff\x55\xff\x54\xff\x56\xff\x57\xff\x58\xff\x5b\xff\x5c\xff\x5d\xff\x59\xff\x5a\xff\x5e\xff\x7a\xff\x7b\xff\x7c\xff\x77\xff\x78\xff\x74\xff\x75\xff\x6f\xff\x70\xff\x71\xff\x72\xff\x6c\xff\x6d\xff\x6a\xff\x68\xff\x66\xff\x64\xff\x62\xff\x00\x00\x88\xfd\x62\xfe\x63\xfe\x00\x00\x66\xfe\xac\xff\x7e\xff\x00\x00\x65\xfe\xad\xff\xae\xff\x00\x00\x72\xfd\x42\xfd\x48\xfd\x46\xfd\x00\x00\x90\xfd\xc7\xfd\x00\x00\x00\x00\x00\x00\xd5\xfc\xff\xfc\x00\x00\x00\xfd\xf9\xfc\xfd\xfc\xf8\xfc\xf7\xfc\xf5\xfc\x00\x00\x00\x00\x00\x00\xc4\xfd\xf1\xfc\x06\xfd\x8d\xfd\x00\x00\x00\x00\x01\xfd\x02\xfd\x0f\xfd\x0c\xfd\x00\x00\xd5\xfd\x00\x00\x00\x00\x3e\xff\x3d\xff\x35\xff\x19\xff\x18\xff\x34\xff\x17\xff\x2c\xff\xd7\xfd\x00\x00\x45\xff\xd3\xfd\x36\xff\x40\xff\x24\xff\x23\xff\x22\xff\x21\xff\xf4\xfe\x00\x00\x00\x00\xea\xfe\xe9\xfe\x00\x00\x6a\xfe\x00\x00\xd0\xfe\x00\x00\xcd\xfe\xcc\xfe\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x23\xfe\x00\x00\x24\xfe\x11\xff\xce\xfd\xcc\xfd\x0f\xff\x00\x00\x12\xfe\x05\xfe\x00\x00\x19\xfe\x22\xfe\x00\x00\x1d\xfe\x1e\xfe\x00\x00\x50\xff\x00\x00\x51\xff\xf7\xfd\xee\xfd\xf0\xfd\x00\x00\xe6\xfd\xe7\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x7a\xfd\x00\x00\x7d\xfd\x7e\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x7b\xfd\x3d\xfd\x3e\xfd\x00\x00\xa4\xff\x39\xfd\x00\x00\x8c\xfd\x00\x00\x36\xfd\x8b\xfd\x25\xfe\x3e\xfe\x5f\xff\x00\x00\x40\xfe\x00\x00\x42\xfe\x45\xfe\x4b\xfe\x4c\xfe\x00\x00\x73\xfe\x72\xfe\x00\x00\x00\x00\x8b\xfe\x8c\xfe\x00\x00\x00\x00\x00\x00\x62\xfe\x00\x00\x78\xfe\x00\x00\x00\x00\x5b\xfe\x5c\xfe\x00\x00\xab\xfe\x96\xfe\x60\xfe\x93\xfe\x00\x00\xc7\xfe\xda\xfe\xd9\xfe\xd8\xfe\xe4\xfe\x00\x00\xdc\xfe\xe0\xfe\xe6\xfe\xd3\xfe\xd4\xfe\x00\x00\xe3\xfe\x7c\xfe\x7d\xfe\x80\xfe\x81\xfe\x00\x00\xa2\xfe\x9e\xfe\x00\x00\xa7\xfe\x00\x00\x00\x00\x00\x00\x2d\xff\x37\xff\x00\x00\xb2\xff\x00\x00\x00\x00\xec\xfc\x24\xfd\x26\xfd\x00\x00\x00\x00\x00\x00\x52\xff\x2e\xfd\x00\x00\x00\x00\x00\x00\x2d\xfd\x24\xfd\x00\x00\x00\x00\xe5\xfc\xea\xfc\x00\x00\x00\x00\x00\x00\xed\xfc\x25\xfd\x26\xfd\x12\xff\x00\x00\x00\x00\xa6\xfe\x00\x00\x00\x00\x9d\xfe\x9f\xfe\xa0\xfe\x7f\xfe\x7b\xfe\xd2\xfe\xd6\xfe\x00\x00\x00\x00\x92\xfe\x00\x00\x59\xfe\x62\xfe\x5e\xfe\x5f\xfe\x00\x00\x5a\xfe\x00\x00\xa8\xfe\xa9\xfe\x00\x00\x00\x00\x84\xfe\x00\x00\x8a\xfe\x00\x00\x00\x00\x89\xfe\x44\xfe\x00\x00\x49\xfe\x4a\xfe\x3f\xfe\x35\xfd\x00\x00\x33\xfd\x38\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x87\xfd\x00\x00\x7f\xfd\x80\xfd\x82\xfd\x00\x00\x00\x00\xfa\xfd\x00\x00\xfc\xfd\x00\x00\xfe\xfd\x00\x00\x00\x00\x51\xff\x00\x00\x20\xfe\x21\xfe\x1b\xfe\x00\x00\x00\x00\xcb\xfd\xcd\xfd\x00\x00\x1c\xfe\x4e\xfe\x50\xfe\x51\xfe\x52\xfe\xbe\xfd\x00\x00\xc2\xfd\xc0\xfd\xb7\xfd\xaf\xfd\xb6\xfd\xad\xfd\xbc\xfd\xae\xfd\xb0\xfd\xb3\xfd\xbb\xfd\xb2\xfd\xb1\xfd\xbd\xfd\xb9\xfd\xb4\xfd\xac\xfd\xb5\xfd\xb8\xfd\xba\xfd\x00\x00\x00\x00\xcf\xfe\xcb\xfe\x56\xfe\x00\x00\xe8\xfe\xf2\xfe\xf3\xfe\xe7\xfe\x00\x00\x00\x00\xd2\xfd\xd6\xfd\xd0\xfd\x2b\xff\x33\xff\x16\xff\x15\xff\x14\xff\x32\xff\x2a\xff\x3f\xff\x47\xff\x46\xff\x4d\xff\xd4\xfd\x00\x00\x09\xfd\x07\xfd\xda\xfc\x00\x00\x00\x00\x05\xfd\xc7\xfd\x00\x00\xf2\xfc\xf6\xfc\x00\x00\xc7\xfd\x00\x00\x81\xff\x82\xff\x00\x00\x00\x00\xc7\xfd\x47\xfd\x71\xfd\x40\xfd\x77\xfd\x00\x00\x7f\xff\x00\x00\x9d\xff\x9c\xff\x00\x00\xa0\xff\x9b\xff\x00\x00\x00\x00\x8e\xff\x8d\xff\x60\xff\x00\x00\x00\x00\x00\x00\x8e\xfd\x00\x00\x00\x00\xfb\xfc\xc7\xfd\x00\x00\xd6\xfc\xd8\xfc\xdb\xfc\x00\x00\x00\x00\x00\x00\x29\xff\x31\xff\xd1\xfd\x00\x00\xee\xfe\xf0\xfe\xf1\xfe\xca\xfe\xc9\xfe\xce\xfe\x54\xfe\x00\x00\x00\x00\x00\x00\x10\xff\xca\xfd\x00\x00\xc9\xfd\x1a\xfe\x00\x00\x00\x00\x00\x00\x01\xfe\xfd\xfd\xfb\xfd\x00\x00\x95\xfd\x00\x00\x00\x00\x00\x00\x30\xfd\x86\xfd\x00\x00\x2f\xfd\x85\xfd\x31\xfd\x32\xfd\xa3\xff\x37\xfd\x8a\xfd\x34\xfd\x43\xfe\x00\x00\x83\xfe\x88\xfe\x00\x00\x87\xfe\x94\xfe\x77\xfe\x58\xfe\x90\xfe\x91\xfe\x9b\xfe\x9c\xfe\xa4\xfe\xa5\xfe\x2c\xfd\x00\x00\xef\xfc\x24\xfd\x00\x00\xe8\xfc\x00\x00\x20\xfd\x00\x00\x00\x00\x21\xfd\x23\xfd\x00\x00\x26\xfd\x16\xfd\x00\x00\x26\xfd\xd1\xfc\x69\xfe\x29\xfd\x26\xfd\x00\x00\x2b\xfd\x1b\xfd\x1a\xfd\x19\xfd\x18\xfd\x1d\xfd\x00\x00\x1e\xfd\x22\xfd\x1f\xfd\x00\x00\xe5\xfc\xeb\xfc\x26\xfd\x86\xfe\x85\xfe\x84\xfd\x7c\xfd\x81\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x9e\xfd\x9d\xfd\x00\x00\x00\x00\xa9\xfd\x00\x00\x00\x00\x00\x00\x00\x00\xf8\xfd\x00\x00\xc8\xfd\xc1\xfd\xc3\xfd\x00\x00\xed\xfe\xef\xfe\x08\xfd\x0b\xfd\xd9\xfc\x00\x00\xf3\xfc\x00\x00\xfc\xfc\x91\xff\x8f\xfd\x41\xfd\x93\xff\x00\x00\x00\x00\x9a\xff\x99\xff\x98\xff\x92\xff\x00\x00\xf4\xfc\xd7\xfc\xbf\xfd\xf9\xfd\x00\x00\xf4\xfd\x00\x00\xf6\xfd\x00\x00\x00\xfe\x00\x00\x00\x00\x95\xfd\x00\x00\x95\xfd\x95\xfd\x83\xfd\x00\x00\x2a\xfd\xe9\xfc\xe7\xfc\x1c\xfd\x00\x00\x28\xfd\x27\xfd\x00\x00\x00\x00\x00\x00\xa3\xfd\xa2\xfd\x00\x00\x00\x00\xa8\xfd\x9c\xfd\x00\x00\x94\xfd\xf3\xfd\xf5\xfd\xf1\xfd\x00\x00\xfa\xfc\xf2\xfd\x00\x00\x00\x00\x9a\xfd\x00\x00\x95\xfd\x9a\xfd\x00\x00\x00\x00\x79\xfd\x78\xfd\x00\x00\x99\xfd\x98\xfd\x96\xfd\xa1\xfd\x00\x00\x00\x00\xa7\xfd\x9b\xfd\x00\x00\x00\x00\x00\x00\x00\x00\x92\xfd\x00\x00\x93\xfd\x97\xfd\xa0\xfd\xa6\xfd\x00\x00\x00\x00\xa5\xfd\x91\xfd"#--happyCheck :: HappyAddr-happyCheck = HappyA# "\xff\xff\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x00\x00\x0d\x00\x8e\x00\x0f\x00\x10\x00\x5a\x00\x12\x00\x18\x00\x19\x00\x13\x00\x18\x00\x19\x00\x18\x00\x19\x00\x1a\x00\x03\x00\x00\x00\x1d\x00\x1e\x00\x00\x00\x20\x00\x00\x00\x00\x00\x23\x00\x24\x00\x25\x00\x11\x00\x04\x00\x00\x00\x00\x00\x01\x00\x00\x00\x2a\x00\xad\x00\x00\x00\x01\x00\x00\x00\x00\x00\x01\x00\x12\x00\x00\x00\x7e\x00\x00\x00\x0c\x00\x0b\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x12\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\x00\x00\x6c\x00\x6d\x00\x38\x00\x39\x00\x00\x00\x01\x00\x03\x00\x12\x00\x7c\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x00\x00\x01\x00\x7d\x00\x7e\x00\x4b\x00\x00\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x0b\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x93\x00\x03\x00\x84\x00\x5a\x00\xb4\x00\xb5\x00\xb6\x00\xb4\x00\x8a\x00\x87\x00\x92\x00\xaa\x00\x9b\x00\x8a\x00\x9a\x00\x9b\x00\x8a\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xd1\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0b\x00\x0d\x00\x0c\x00\x0f\x00\x10\x00\xbb\x00\x12\x00\x11\x00\xd1\x00\x04\x00\x87\x00\x6e\x00\x18\x00\x19\x00\x1a\x00\x00\x00\x5a\x00\x1d\x00\x1e\x00\x00\x00\x20\x00\x00\x00\x01\x00\x23\x00\x24\x00\x25\x00\x00\x00\x01\x00\x8a\x00\x90\x00\x8c\x00\x8d\x00\x7e\x00\x7f\x00\x13\x00\x96\x00\x93\x00\x12\x00\x87\x00\x9b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x13\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\xa5\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x93\x00\x5a\x00\x6c\x00\x6d\x00\x00\x00\x39\x00\x00\x00\x01\x00\x00\x00\x01\x00\x76\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x7d\x00\xa5\x00\x7d\x00\x7e\x00\x4b\x00\x4b\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x87\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x8a\x00\x87\x00\x8c\x00\x00\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x6b\x00\x00\x00\x01\x00\x6e\x00\x4b\x00\x00\x00\x01\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0b\x00\x0d\x00\x00\x00\x01\x00\x11\x00\x93\x00\x12\x00\x00\x00\x6c\x00\x6d\x00\x6e\x00\x9d\x00\x18\x00\x19\x00\x1a\x00\x38\x00\x39\x00\x1d\x00\x1e\x00\x00\x00\x20\x00\x11\x00\xa4\x00\x23\x00\x24\x00\x25\x00\xac\x00\x00\x00\x4b\x00\x8a\x00\x2b\x00\x8a\x00\x00\x00\x4b\x00\x02\x00\x03\x00\x0d\x00\x05\x00\x06\x00\x07\x00\x00\x00\x09\x00\x13\x00\x0b\x00\x0c\x00\x39\x00\x00\x00\x2b\x00\x3c\x00\x3d\x00\x9f\x00\xa0\x00\xa1\x00\x41\x00\xa1\x00\x43\x00\x44\x00\x45\x00\x9e\x00\x13\x00\x47\x00\x49\x00\x4a\x00\x4b\x00\x39\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x00\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x6f\x00\x70\x00\x71\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x4b\x00\x00\x00\x6c\x00\x00\x00\x01\x00\x8a\x00\x03\x00\x43\x00\x00\x00\x01\x00\x00\x00\x01\x00\x3c\x00\x03\x00\x00\x00\x79\x00\x7a\x00\x41\x00\x4e\x00\x43\x00\x70\x00\x71\x00\x5a\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xa1\x00\x87\x00\x4e\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x2d\x00\x80\x00\x00\x00\x01\x00\x83\x00\x03\x00\x3a\x00\x0c\x00\x87\x00\x3c\x00\xa6\x00\x3e\x00\xa8\x00\x3a\x00\x13\x00\x8e\x00\x44\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x6e\x00\x0b\x00\x14\x00\x0d\x00\x0e\x00\x0b\x00\x6d\x00\x6e\x00\x11\x00\x04\x00\x0d\x00\x2d\x00\x00\x00\x13\x00\x18\x00\x19\x00\x1a\x00\x6e\x00\x15\x00\x1d\x00\x1e\x00\x27\x00\x20\x00\x97\x00\x3a\x00\x23\x00\x24\x00\x25\x00\x0b\x00\x0e\x00\x0d\x00\x11\x00\x11\x00\x8a\x00\x2b\x00\x00\x00\x2a\x00\x02\x00\x15\x00\x16\x00\x05\x00\x06\x00\x07\x00\x2e\x00\x09\x00\x00\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x3d\x00\x23\x00\x24\x00\x9f\x00\xa0\x00\xa1\x00\x2b\x00\x26\x00\x0f\x00\x91\x00\x92\x00\x12\x00\x6d\x00\x6e\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x4f\x00\x50\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x37\x00\x6e\x00\x57\x00\x3a\x00\x00\x00\x44\x00\x04\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x11\x00\x12\x00\x2e\x00\x2f\x00\x30\x00\x11\x00\x12\x00\x0c\x00\x3b\x00\x3c\x00\x00\x00\x37\x00\x11\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x6c\x00\x6d\x00\x6e\x00\x00\x00\x0c\x00\x81\x00\x82\x00\x0c\x00\x4d\x00\x4e\x00\x5a\x00\x2e\x00\x2a\x00\x89\x00\x13\x00\x0c\x00\x6e\x00\x4f\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x95\x00\x00\x00\x00\x00\x00\x00\x80\x00\x9e\x00\x9b\x00\x83\x00\x9d\x00\x0a\x00\x0c\x00\x87\x00\xa1\x00\x0c\x00\x0f\x00\x11\x00\x11\x00\x12\x00\x8e\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x00\x00\x95\x00\x00\x00\x0c\x00\xba\x00\x2e\x00\x00\x00\x9b\x00\x11\x00\x9d\x00\x0b\x00\x3a\x00\x0d\x00\xa1\x00\x86\x00\x87\x00\x39\x00\x11\x00\x12\x00\x3c\x00\x3d\x00\x44\x00\x45\x00\x3c\x00\x41\x00\x1a\x00\x43\x00\x44\x00\x45\x00\x04\x00\x43\x00\x20\x00\x49\x00\x4a\x00\x4b\x00\x00\x00\x4d\x00\x4e\x00\x3a\x00\x50\x00\x51\x00\x4e\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x0c\x00\x44\x00\x45\x00\x5b\x00\x0c\x00\x00\x00\x2e\x00\x2f\x00\x30\x00\x11\x00\xa6\x00\x00\x00\xa8\x00\x04\x00\x00\x00\x37\x00\x27\x00\x28\x00\x3b\x00\x3c\x00\x6c\x00\x6d\x00\x2d\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x11\x00\x12\x00\x3a\x00\x11\x00\x12\x00\x79\x00\x7a\x00\x3a\x00\x4d\x00\x4e\x00\x3a\x00\x4f\x00\x44\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x6e\x00\x45\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x00\x00\x2e\x00\x2f\x00\x30\x00\x3a\x00\x32\x00\x33\x00\x00\x00\x91\x00\x92\x00\x37\x00\x3c\x00\x0c\x00\x3a\x00\x00\x00\x45\x00\x41\x00\x0a\x00\x43\x00\x27\x00\x28\x00\x00\x00\x5a\x00\x10\x00\x45\x00\x2d\x00\xa8\x00\xa9\x00\xaa\x00\x4e\x00\x10\x00\x11\x00\x0b\x00\x6e\x00\x4f\x00\x74\x00\x75\x00\x76\x00\x3a\x00\x77\x00\x78\x00\x79\x00\x91\x00\x92\x00\x7d\x00\x7d\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\x93\x00\x00\x00\x95\x00\x41\x00\x79\x00\x43\x00\x5a\x00\x45\x00\x7d\x00\x04\x00\x04\x00\x49\x00\x4a\x00\x0c\x00\x00\x00\x4d\x00\x4e\x00\xa4\x00\x11\x00\x51\x00\x03\x00\x6e\x00\x54\x00\x55\x00\x56\x00\x57\x00\x0c\x00\x27\x00\x28\x00\x5b\x00\x26\x00\x11\x00\x56\x00\x2d\x00\x94\x00\x95\x00\x0c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x11\x00\x74\x00\x75\x00\x76\x00\x6e\x00\x3a\x00\x37\x00\x6e\x00\x6f\x00\x3a\x00\x7d\x00\x2e\x00\x2f\x00\x30\x00\x04\x00\x32\x00\x33\x00\x0c\x00\x79\x00\x7a\x00\x37\x00\x43\x00\x44\x00\x3a\x00\x13\x00\x00\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x4d\x00\x4e\x00\x00\x00\x45\x00\x8a\x00\x8b\x00\x0c\x00\x8d\x00\x00\x00\x91\x00\x92\x00\x11\x00\x04\x00\x4f\x00\x0c\x00\x00\x00\x27\x00\x28\x00\x0c\x00\x11\x00\x0b\x00\x43\x00\x2d\x00\x11\x00\x0f\x00\x0a\x00\x6e\x00\x00\x00\x13\x00\x02\x00\x6e\x00\x10\x00\x05\x00\x06\x00\x07\x00\x3a\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\x01\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\x04\x00\x00\x00\x9b\x00\x41\x00\x9d\x00\x43\x00\x95\x00\x45\x00\xa1\x00\x00\x00\x6e\x00\x49\x00\x4a\x00\x0c\x00\x0e\x00\x4d\x00\x4e\x00\x11\x00\x11\x00\x51\x00\x00\x00\x0c\x00\x54\x00\x55\x00\x56\x00\x57\x00\x11\x00\x0c\x00\x0d\x00\x5b\x00\x00\x00\x0c\x00\x0d\x00\x00\x00\x13\x00\x00\x00\x0c\x00\x02\x00\x13\x00\x00\x00\x05\x00\x06\x00\x07\x00\x13\x00\x09\x00\x0c\x00\x0b\x00\x0c\x00\x6e\x00\x6f\x00\x11\x00\x0c\x00\x00\x00\x2e\x00\x2f\x00\x30\x00\x11\x00\x91\x00\x92\x00\x79\x00\x7a\x00\x0c\x00\x37\x00\x97\x00\x98\x00\x3a\x00\x11\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xa0\x00\x43\x00\x44\x00\x0c\x00\x8a\x00\x8b\x00\x80\x00\x8d\x00\x11\x00\x83\x00\x04\x00\x4d\x00\x4e\x00\x87\x00\x4f\x00\x00\x00\x1a\x00\x6d\x00\x6e\x00\x9a\x00\x8e\x00\x9c\x00\x20\x00\x9e\x00\x9f\x00\x0a\x00\x00\x00\x00\x00\x02\x00\x02\x00\x0c\x00\x10\x00\x05\x00\x06\x00\x07\x00\x11\x00\x09\x00\x04\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x3d\x00\xae\x00\x00\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\x57\x00\x43\x00\x0b\x00\x41\x00\x0d\x00\x43\x00\x6e\x00\x45\x00\x0b\x00\x0c\x00\x0d\x00\x49\x00\x4a\x00\x43\x00\x80\x00\x4d\x00\x4e\x00\x83\x00\x0b\x00\x51\x00\x0d\x00\x87\x00\x54\x00\x55\x00\x56\x00\x57\x00\x3a\x00\x26\x00\x8e\x00\x5b\x00\x43\x00\x44\x00\x06\x00\x07\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x06\x00\x07\x00\x4d\x00\x4e\x00\x81\x00\x82\x00\x37\x00\x43\x00\x44\x00\x3a\x00\x6e\x00\x6f\x00\x7a\x00\x7b\x00\x7c\x00\x02\x00\x03\x00\x4d\x00\x4e\x00\x06\x00\x07\x00\x79\x00\x7a\x00\x6a\x00\x6b\x00\x43\x00\x6d\x00\x6e\x00\x43\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x8a\x00\x8b\x00\x80\x00\x8d\x00\x00\x00\x83\x00\x7a\x00\x7b\x00\x7c\x00\x87\x00\x86\x00\x6c\x00\x6d\x00\x6e\x00\x91\x00\x92\x00\x8e\x00\x6c\x00\x6d\x00\x6e\x00\x6c\x00\x6d\x00\x6e\x00\x6e\x00\x04\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x6c\x00\x6d\x00\x6e\x00\x00\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x0b\x00\x0d\x00\x0d\x00\x0f\x00\x00\x00\x01\x00\x12\x00\x6c\x00\x6d\x00\x6e\x00\x2b\x00\x2c\x00\x18\x00\x19\x00\x1a\x00\x00\x00\x01\x00\x1d\x00\x1e\x00\x0b\x00\x20\x00\x0d\x00\x60\x00\x23\x00\x24\x00\x25\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x00\x00\x0b\x00\x02\x00\x0d\x00\x44\x00\x05\x00\x06\x00\x07\x00\x11\x00\x09\x00\x13\x00\x0b\x00\x0c\x00\x0d\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x6e\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x91\x00\x92\x00\x6c\x00\x6d\x00\x6c\x00\x6d\x00\x6e\x00\x6c\x00\x6d\x00\x6e\x00\x03\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x06\x00\x07\x00\x7d\x00\x7e\x00\x6d\x00\x6e\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x87\x00\x56\x00\x89\x00\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x80\x00\x00\x00\x01\x00\x83\x00\x2e\x00\x2f\x00\x30\x00\x87\x00\x6c\x00\x6d\x00\x6e\x00\x00\x00\x01\x00\x37\x00\x8e\x00\x00\x00\x3a\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x5a\x00\x0d\x00\x01\x00\x0f\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x06\x00\x07\x00\x18\x00\x19\x00\x1a\x00\x6d\x00\x6e\x00\x1d\x00\x1e\x00\x6e\x00\x20\x00\x00\x00\x01\x00\x23\x00\x24\x00\x25\x00\x5a\x00\x0b\x00\x00\x00\x0d\x00\x02\x00\x00\x00\x01\x00\x05\x00\x06\x00\x07\x00\x0b\x00\x09\x00\x0d\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x3c\x00\x3d\x00\x6c\x00\x6d\x00\x6e\x00\x41\x00\x0b\x00\x43\x00\x0d\x00\x45\x00\x1a\x00\x1b\x00\x1c\x00\x49\x00\x4a\x00\xa7\x00\xa8\x00\x4d\x00\x4e\x00\x4f\x00\x0b\x00\x51\x00\x0d\x00\x6e\x00\x54\x00\x55\x00\x56\x00\x57\x00\x06\x00\x07\x00\x00\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x00\x00\x96\x00\x97\x00\x79\x00\x7a\x00\x65\x00\x66\x00\x10\x00\x11\x00\x11\x00\x12\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x04\x00\x10\x00\x11\x00\x89\x00\x8a\x00\x8b\x00\x03\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x80\x00\x11\x00\x12\x00\x83\x00\x36\x00\x10\x00\x11\x00\x87\x00\x03\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x8e\x00\x86\x00\x87\x00\x5a\x00\x44\x00\x5a\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\x02\x00\x0d\x00\x10\x00\x11\x00\x28\x00\x29\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x21\x00\x22\x00\x18\x00\x19\x00\x1a\x00\x02\x00\x37\x00\x1d\x00\x1e\x00\x3a\x00\x20\x00\x18\x00\x19\x00\x23\x00\x24\x00\x25\x00\x11\x00\x12\x00\x00\x00\x00\x00\x02\x00\x28\x00\x29\x00\x05\x00\x06\x00\x07\x00\x54\x00\x09\x00\x43\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x43\x00\x3c\x00\x3d\x00\x21\x00\x22\x00\x04\x00\x41\x00\x34\x00\x43\x00\x04\x00\x45\x00\x18\x00\x19\x00\x43\x00\x49\x00\x4a\x00\x3a\x00\x04\x00\x4d\x00\x4e\x00\x4f\x00\x43\x00\x51\x00\x56\x00\x6e\x00\x54\x00\x55\x00\x56\x00\x57\x00\x97\x00\x00\x00\x00\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x26\x00\x34\x00\x56\x00\x56\x00\x56\x00\x72\x00\x00\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x00\x00\x9d\x00\x99\x00\x12\x00\x79\x00\x7a\x00\x37\x00\x11\x00\x5f\x00\x3a\x00\x0c\x00\x02\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x12\x00\x0c\x00\x11\x00\x89\x00\x8a\x00\x8b\x00\x13\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x80\x00\x0f\x00\x02\x00\x83\x00\x0d\x00\x0b\x00\x02\x00\x87\x00\x12\x00\x0c\x00\x6e\x00\x02\x00\x11\x00\x0c\x00\x8e\x00\x13\x00\x12\x00\x0c\x00\x0b\x00\x0d\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0e\x00\x0b\x00\x17\x00\x0d\x00\x0e\x00\x11\x00\x02\x00\x12\x00\x11\x00\x0f\x00\x0b\x00\x13\x00\x2a\x00\x12\x00\x18\x00\x19\x00\x1a\x00\x2a\x00\x0c\x00\x1d\x00\x1e\x00\x12\x00\x20\x00\x2a\x00\x04\x00\x23\x00\x24\x00\x25\x00\x0c\x00\x0f\x00\x13\x00\x0e\x00\x00\x00\x0e\x00\x02\x00\x42\x00\x0f\x00\x05\x00\x06\x00\x07\x00\x12\x00\x09\x00\x13\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x1c\x00\x12\x00\x1e\x00\x3d\x00\x20\x00\x0c\x00\x22\x00\x87\x00\x24\x00\x0c\x00\x2e\x00\x27\x00\x28\x00\x87\x00\x0c\x00\x00\x00\x0f\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x4f\x00\x50\x00\x0b\x00\x11\x00\x87\x00\x0f\x00\x37\x00\x0f\x00\x57\x00\x3a\x00\x17\x00\x0c\x00\x2e\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x87\x00\x87\x00\x11\x00\x4f\x00\x0b\x00\x00\x00\x87\x00\x02\x00\x10\x00\x12\x00\x05\x00\x06\x00\x07\x00\x02\x00\x09\x00\x0c\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x81\x00\x82\x00\x0c\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x89\x00\x0e\x00\x8e\x00\x6e\x00\x44\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x0e\x00\x0c\x00\x80\x00\x0c\x00\x0c\x00\x83\x00\x0c\x00\x8d\x00\x0f\x00\x87\x00\x0b\x00\x87\x00\x0e\x00\x12\x00\x98\x00\x99\x00\x8e\x00\x11\x00\x9c\x00\x9d\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0c\x00\x0b\x00\x02\x00\x0d\x00\x12\x00\x0b\x00\x0e\x00\x0e\x00\x0b\x00\x0b\x00\x87\x00\x00\x00\x11\x00\x2e\x00\x18\x00\x19\x00\x1a\x00\x10\x00\x0c\x00\x1d\x00\x1e\x00\x80\x00\x20\x00\x0f\x00\x83\x00\x23\x00\x24\x00\x25\x00\x87\x00\x13\x00\x12\x00\x0c\x00\x11\x00\x13\x00\x0c\x00\x8e\x00\x0c\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x1c\x00\x11\x00\x1e\x00\x3d\x00\x20\x00\x87\x00\x22\x00\x2c\x00\x24\x00\x0c\x00\x13\x00\x27\x00\x28\x00\x0e\x00\x1f\x00\x26\x00\x1e\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x4f\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x37\x00\x20\x00\x57\x00\x3a\x00\x44\x00\x11\x00\x02\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x0c\x00\x3c\x00\x3d\x00\x4f\x00\x0f\x00\x87\x00\x41\x00\x0f\x00\x43\x00\x12\x00\x45\x00\x2a\x00\x0b\x00\x58\x00\x49\x00\x4a\x00\x11\x00\x5d\x00\x4d\x00\x4e\x00\x0f\x00\x0b\x00\x51\x00\x81\x00\x82\x00\x54\x00\x55\x00\x56\x00\x57\x00\x0b\x00\x0b\x00\x89\x00\x0b\x00\x78\x00\x6e\x00\x0f\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x97\x00\x2e\x00\xd1\x00\xd1\x00\x11\x00\xd1\x00\xd1\x00\x57\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x78\x00\x87\x00\x0b\x00\x0b\x00\x8a\x00\x0b\x00\xd1\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x12\x00\xd1\x00\x13\x00\x0b\x00\x2a\x00\x0b\x00\x02\x00\x2a\x00\xd1\x00\x9d\x00\xd1\x00\x0b\x00\x1a\x00\x2e\x00\x13\x00\x13\x00\x11\x00\x26\x00\x20\x00\x8e\x00\x1f\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x20\x00\x39\x00\x1e\x00\xd1\x00\x3c\x00\x3d\x00\xd1\x00\x02\x00\x13\x00\x41\x00\x09\x00\x43\x00\x44\x00\x45\x00\xff\xff\xd1\x00\xd1\x00\x49\x00\x4a\x00\x4b\x00\xd1\x00\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\xff\xff\x4f\x00\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x09\x00\x0a\x00\xff\xff\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x00\x00\xff\xff\xff\xff\xff\xff\x04\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x35\x00\x36\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x09\x00\x0a\x00\xff\xff\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\x2b\x00\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x09\x00\x0a\x00\xff\xff\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x35\x00\x36\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x44\x00\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x0a\x00\x35\x00\x36\x00\xff\xff\xff\xff\xff\xff\xff\xff\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\xff\xff\xff\xff\x18\x00\x19\x00\x44\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xff\xff\xff\xff\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\x2b\x00\x2c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6a\x00\xff\xff\x6c\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x72\x00\x73\x00\x74\x00\xff\xff\x44\x00\xff\xff\xff\xff\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\xff\xff\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\xff\xff\xff\xff\xb4\x00\xb5\x00\xb6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\x6a\x00\x3a\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x72\x00\x73\x00\x74\x00\xff\xff\x45\x00\xff\xff\x80\x00\x79\x00\x7a\x00\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\x4f\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x8e\x00\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\xff\xff\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\xff\xff\xb4\x00\xb5\x00\xb6\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xff\xff\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x79\x00\x7a\x00\x83\x00\xff\xff\x4f\x00\xff\xff\x87\x00\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x8e\x00\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xff\xff\xff\xff\x0a\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x79\x00\x7a\x00\x83\x00\xff\xff\x4f\x00\xff\xff\x87\x00\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x8e\x00\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\xff\xff\xff\xff\x0a\x00\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xb4\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\x3d\x00\xff\xff\xff\xff\x80\x00\x79\x00\x7a\x00\x83\x00\xff\xff\x4f\x00\xff\xff\x87\x00\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x8e\x00\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\x57\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6c\x00\x6d\x00\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\xab\x00\xac\x00\xad\x00\xae\x00\xff\xff\xff\xff\xff\xff\x1a\x00\xff\xff\xb4\x00\xff\xff\xff\xff\xff\xff\x20\x00\x81\x00\x82\x00\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\xff\xff\xff\xff\xff\xff\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\x2e\x00\x2f\x00\x30\x00\xff\xff\x32\x00\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\x6a\x00\x3a\x00\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x72\x00\x73\x00\x74\x00\xff\xff\x45\x00\xff\xff\x80\x00\x79\x00\x7a\x00\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\x4f\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x8e\x00\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\x32\x00\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\x6c\x00\x6d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\x75\x00\x76\x00\xff\xff\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x2e\x00\x2f\x00\x30\x00\x87\x00\x32\x00\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\x8e\x00\x0a\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\x45\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\x6a\x00\xff\xff\x6c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x72\x00\x73\x00\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x2e\x00\x2f\x00\x30\x00\x87\x00\x32\x00\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\x8e\x00\x0a\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\x45\x00\x17\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1d\x00\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\xff\xff\x25\x00\xff\xff\xff\xff\xff\xff\x29\x00\x2a\x00\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\x37\x00\xff\xff\xff\xff\x3a\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\x4f\x00\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5a\x00\x8e\x00\x0a\x00\xff\xff\x0c\x00\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\xff\xff\x69\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\x4c\x00\xff\xff\xff\xff\x4f\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x2e\x00\x2f\x00\x30\x00\x87\x00\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\x8e\x00\x0a\x00\x3a\x00\xff\xff\xff\xff\xff\xff\x0f\x00\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\x45\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x4c\x00\x0b\x00\x0c\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x6c\x00\x6d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x2e\x00\x2f\x00\x30\x00\x87\x00\x32\x00\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\x8e\x00\x0a\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\x45\x00\x17\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x4f\x00\xff\xff\x83\x00\x2e\x00\x2f\x00\x30\x00\x87\x00\x32\x00\x33\x00\xff\xff\xff\xff\x5a\x00\x37\x00\x8e\x00\x0a\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\x45\x00\xff\xff\x05\x00\x06\x00\x07\x00\x6e\x00\x09\x00\xff\xff\x0b\x00\x0c\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0f\x00\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\x6c\x00\x6d\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\x79\x00\x7a\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\x5d\x00\xff\xff\xff\xff\x8e\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\xff\xff\x6e\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x7c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x7b\x00\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x4f\x00\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\x6e\x00\x09\x00\xff\xff\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\x6c\x00\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\x79\x00\x7a\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\x5d\x00\xff\xff\xff\xff\x8e\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\x00\x00\xff\xff\x02\x00\xff\xff\x6e\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x79\x00\x7a\x00\xff\xff\x1b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\x8c\x00\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0a\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\x10\x00\xff\xff\x12\x00\xa8\x00\xa9\x00\xaa\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\x80\x00\x4d\x00\x4e\x00\x83\x00\xff\xff\x51\x00\xff\xff\x87\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\x8e\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8a\x00\x8b\x00\xff\xff\x8d\x00\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x10\x00\x02\x00\x12\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x49\x00\xff\xff\xff\xff\xff\xff\x8a\x00\x8b\x00\x4f\x00\x8d\x00\x8e\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x10\x00\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\x09\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x6e\x00\x6f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8a\x00\x8b\x00\xff\xff\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0a\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\x20\x00\x5b\x00\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\x6e\x00\x6f\x00\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\x4f\x00\x8a\x00\x8b\x00\xff\xff\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x0a\x00\x0b\x00\xff\xff\x68\x00\xff\xff\xff\xff\x00\x00\x00\x00\x02\x00\x6e\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x09\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8a\x00\x8b\x00\xff\xff\x8d\x00\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x0a\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\x6f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8a\x00\x8b\x00\xff\xff\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x0a\x00\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\x1b\x00\xff\xff\x0a\x00\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\x57\x00\x3c\x00\x3d\x00\xff\xff\x5b\x00\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\x6e\x00\xff\xff\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\x80\x00\x8a\x00\x8b\x00\x83\x00\x8d\x00\xff\xff\xff\xff\x87\x00\x88\x00\xff\xff\xff\xff\xff\xff\x79\x00\x7a\x00\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8a\x00\x8b\x00\xff\xff\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\x57\x00\x3c\x00\x3d\x00\xff\xff\x5b\x00\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\x8a\x00\x8b\x00\xff\xff\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8a\x00\x8b\x00\xff\xff\x8d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x09\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x0a\x00\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xaf\x00\xb0\x00\x8d\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x13\x00\xff\xff\xff\xff\xff\xff\x8d\x00\xb7\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\xff\xff\xff\xff\x5b\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\x81\x00\x82\x00\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb8\x00\xb9\x00\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\x13\x00\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb1\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\xff\xff\xff\xff\x5b\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6b\x00\xff\xff\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\xff\xff\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\xff\xff\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x13\x00\xff\xff\xff\xff\xb8\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x8f\x00\xff\xff\x5b\x00\x5c\x00\xff\xff\x94\x00\xff\xff\xff\xff\xff\xff\xff\xff\x99\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa0\x00\xff\xff\xa2\x00\xa3\x00\xff\xff\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\xff\xff\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\x81\x00\x82\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\xff\xff\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x13\x00\xff\xff\xff\xff\xb8\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\xff\xff\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x09\x00\xff\xff\x5b\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x94\x00\xff\xff\xff\xff\xff\xff\xff\xff\x99\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa0\x00\xff\xff\xa2\x00\xff\xff\xff\xff\xff\xff\xff\xff\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\xff\xff\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\x13\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\xb3\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\xff\xff\xff\xff\x5b\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\xff\xff\xaf\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xb2\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\x3e\x00\x3f\x00\x40\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x46\x00\x47\x00\x48\x00\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x52\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x58\x00\x59\x00\x5a\x00\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x77\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7d\x00\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x86\x00\x87\x00\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\x3e\x00\x3f\x00\x40\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x46\x00\x47\x00\x48\x00\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x52\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x58\x00\x59\x00\x5a\x00\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x77\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7d\x00\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x86\x00\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\x3e\x00\x3f\x00\x40\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x46\x00\x47\x00\x48\x00\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x52\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x58\x00\x59\x00\x5a\x00\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x77\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7d\x00\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x86\x00\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\x3e\x00\x3f\x00\x40\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x46\x00\x47\x00\x48\x00\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x52\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x58\x00\x59\x00\x5a\x00\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x77\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7d\x00\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x86\x00\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\x15\x00\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x68\x00\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\x6e\x00\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x9d\x00\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xa9\x00\x20\x00\xab\x00\xac\x00\x23\x00\x24\x00\x25\x00\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\x4a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\x6b\x00\x02\x00\x03\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x6e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\x09\x00\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\x70\x00\x71\x00\xff\xff\xff\xff\x4f\x00\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\x09\x00\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\x09\x00\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x70\x00\x71\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\x00\x00\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\x09\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x5c\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x89\x00\xff\xff\xff\xff\x1b\x00\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x3a\x00\x3b\x00\xff\xff\xff\xff\x3e\x00\x3f\x00\x40\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x46\x00\x47\x00\x48\x00\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x52\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x58\x00\x59\x00\x5a\x00\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x77\x00\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7d\x00\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x86\x00\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\x3e\x00\x3f\x00\x40\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x46\x00\x47\x00\x48\x00\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x52\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x58\x00\x59\x00\x5a\x00\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x77\x00\x78\x00\xff\xff\xff\xff\xff\xff\xff\xff\x7d\x00\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x86\x00\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x3b\x00\xff\xff\xff\xff\x3e\x00\x3f\x00\x40\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x46\x00\x47\x00\x48\x00\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x52\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x58\x00\x59\x00\x5a\x00\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x77\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7d\x00\x7e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x86\x00\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\x15\x00\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\x3b\x00\x3c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\x44\x00\x4f\x00\x46\x00\xff\xff\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\x4f\x00\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\x0f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x15\x00\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\x03\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7f\x00\x80\x00\xff\xff\xff\xff\xff\xff\xff\xff\x50\x00\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\x09\x00\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\x8e\x00\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\x5c\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x70\x00\xff\xff\x4f\x00\x1b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\x6b\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\x80\x00\x0f\x00\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\x8e\x00\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\x03\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x7f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x50\x00\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\x09\x00\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\x8e\x00\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\x4a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\x6b\x00\x02\x00\x03\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x6e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\x6b\x00\x02\x00\x03\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\x0e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x50\x00\xff\xff\x52\x00\x53\x00\x54\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x10\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x0b\x00\xff\xff\x0d\x00\x0e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\x80\x00\x3a\x00\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\x46\x00\x8e\x00\x48\x00\x49\x00\xff\xff\x4b\x00\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\x0e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x45\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\x80\x00\x0f\x00\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\x8e\x00\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\x82\x00\x83\x00\xff\xff\xff\xff\x4f\x00\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\xff\xff\x02\x00\x03\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\x00\x00\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x50\x00\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\x80\x00\x3a\x00\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\x46\x00\x8e\x00\x48\x00\x49\x00\xff\xff\x4b\x00\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\x6b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\x0e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\x8e\x00\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\x88\x00\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\x8e\x00\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\x88\x00\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\xff\xff\x02\x00\x03\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x50\x00\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x01\x00\x02\x00\x03\x00\x04\x00\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x18\x00\x19\x00\x1a\x00\xff\xff\xff\xff\x1d\x00\x1e\x00\xff\xff\x20\x00\xff\xff\xff\xff\x23\x00\x24\x00\x25\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\x49\x00\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\x09\x00\x0a\x00\xff\xff\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x13\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x89\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\xff\xff\xff\xff\x5b\x00\x5c\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\xff\xff\xff\xff\x13\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\xff\xff\xff\xff\x5b\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\xff\xff\xff\xff\x5b\x00\x5c\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x81\x00\x82\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xa8\x00\xa9\x00\xaa\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\xff\xff\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\xff\xff\xff\xff\x53\x00\xff\xff\x55\x00\x56\x00\x57\x00\x09\x00\x0a\x00\x0b\x00\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x12\x00\x13\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1a\x00\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x20\x00\xff\xff\xff\xff\x87\x00\x09\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\x13\x00\xff\xff\xff\xff\xff\xff\x81\x00\xff\xff\xff\xff\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x8c\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x5c\x00\x09\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\x5c\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0f\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x5c\x00\x09\x00\x0a\x00\x0b\x00\xff\xff\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x0f\x00\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\x0b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x87\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x5c\x00\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x09\x00\xff\xff\x0b\x00\xff\xff\x0d\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\x09\x00\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x09\x00\x0a\x00\xff\xff\x46\x00\xff\xff\x48\x00\x49\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x5c\x00\x09\x00\x0a\x00\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x5c\x00\x09\x00\xff\xff\xff\xff\x0c\x00\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\x09\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\x12\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8d\x00\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x5c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8f\x00\x90\x00\x91\x00\x92\x00\x93\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xa1\x00\xa2\x00\xa3\x00\xa4\x00\xa5\x00\xa6\x00\xa7\x00\x39\x00\xff\xff\xff\xff\x3c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\x44\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x4b\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\x50\x00\x51\x00\xff\xff\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\xff\xff\x87\x00\xff\xff\x39\x00\x8a\x00\xff\xff\x8c\x00\x3d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\x44\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4b\x00\xff\xff\xff\xff\xff\xff\xff\xff\x50\x00\xff\xff\xff\xff\x53\x00\xff\xff\xff\xff\xff\xff\x57\x00\xa8\x00\xa9\x00\xaa\x00\x67\x00\x68\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x81\x00\x82\x00\x8f\x00\x90\x00\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa2\x00\xa3\x00\xa4\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xa8\x00\xa9\x00\xaa\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xbc\x00\xbd\x00\xbe\x00\xbf\x00\xc0\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xc5\x00\xc6\x00\xc7\x00\xc8\x00\xc9\x00\xca\x00\xcb\x00\xcc\x00\xcd\x00\xce\x00\xcf\x00\xd0\x00\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\x37\x00\x27\x00\x28\x00\x3a\x00\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\x44\x00\xff\xff\x46\x00\xff\xff\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\x4f\x00\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\x67\x00\x68\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x6e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\x6e\x00\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\x8f\x00\x90\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xa2\x00\xa3\x00\xa4\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xad\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\x56\x00\xff\xff\xff\xff\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\x60\x00\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\x37\x00\x02\x00\xff\xff\x3a\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\x56\x00\xff\xff\xff\xff\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\x80\x00\x81\x00\xff\xff\x83\x00\x00\x00\x37\x00\x02\x00\x87\x00\x3a\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\x56\x00\xff\xff\xff\xff\x59\x00\x5a\x00\xff\xff\xff\xff\x5d\x00\x5e\x00\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\x3a\x00\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x37\x00\x02\x00\x87\x00\x3a\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\x56\x00\xff\xff\xff\xff\x59\x00\x5a\x00\xff\xff\xff\xff\x5d\x00\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\x3a\x00\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x1a\x00\xff\xff\x1c\x00\xff\xff\x1e\x00\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x37\x00\x02\x00\x87\x00\x3a\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x4f\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\x6e\x00\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\x4c\x00\x83\x00\xff\xff\x4f\x00\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\x73\x00\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\x55\x00\xff\xff\xff\xff\xff\xff\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x4c\x00\xff\xff\xff\xff\x4f\x00\xff\xff\xff\xff\xff\xff\x6d\x00\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\xff\xff\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4c\x00\xff\xff\xff\xff\x4f\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x5a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\x8e\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\x55\x00\x56\x00\xff\xff\xff\xff\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\x2e\x00\x2f\x00\x30\x00\xff\xff\xff\xff\x33\x00\xff\xff\xff\xff\xff\xff\x37\x00\xff\xff\x73\x00\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x45\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\x85\x00\x4c\x00\x87\x00\xff\xff\x4f\x00\x00\x00\xff\xff\x02\x00\xff\xff\x8e\x00\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x5a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\x00\x00\x87\x00\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\x8e\x00\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\x55\x00\xff\xff\x27\x00\x28\x00\x59\x00\x5a\x00\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x4f\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\x85\x00\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\x8e\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\x00\x00\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\x55\x00\xff\xff\x27\x00\x28\x00\x59\x00\x5a\x00\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\x46\x00\xff\xff\x48\x00\x49\x00\xff\xff\x4b\x00\xff\xff\x55\x00\xff\xff\x4f\x00\x80\x00\x59\x00\x5a\x00\x83\x00\xff\xff\x85\x00\xff\xff\x87\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\x55\x00\x27\x00\x28\x00\xff\xff\x59\x00\x5a\x00\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\x47\x00\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\x4f\x00\xff\xff\x80\x00\x59\x00\x5a\x00\x83\x00\xff\xff\x85\x00\xff\xff\x87\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x22\x00\xff\xff\x24\x00\xff\xff\x55\x00\x27\x00\x28\x00\xff\xff\x59\x00\x5a\x00\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\x49\x00\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\x4f\x00\xff\xff\x80\x00\x59\x00\x5a\x00\x83\x00\xff\xff\x85\x00\xff\xff\x87\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\x80\x00\x59\x00\x5a\x00\x83\x00\xff\xff\x85\x00\xff\xff\x87\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\x80\x00\x59\x00\x5a\x00\x83\x00\xff\xff\x85\x00\xff\xff\x87\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\x80\x00\x59\x00\x5a\x00\x83\x00\xff\xff\x85\x00\xff\xff\x87\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\xff\xff\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x55\x00\xff\xff\xff\xff\x80\x00\x59\x00\x5a\x00\x83\x00\xff\xff\x85\x00\xff\xff\x87\x00\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x73\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\x85\x00\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x1d\x00\xff\xff\x1f\x00\xff\xff\x21\x00\xff\xff\x23\x00\xff\xff\x25\x00\xff\xff\xff\xff\xff\xff\x29\x00\x2a\x00\xff\xff\xff\xff\x2d\x00\x2e\x00\x2f\x00\x30\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\x37\x00\x87\x00\xff\xff\x3a\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x4f\x00\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x69\x00\x6a\x00\x6b\x00\x87\x00\x6d\x00\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\xff\xff\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\xff\xff\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\x08\x00\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\x81\x00\xff\xff\x83\x00\x00\x00\xff\xff\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x19\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\x0a\x00\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\x3c\x00\x80\x00\xff\xff\xff\xff\x83\x00\x41\x00\xff\xff\x43\x00\x87\x00\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\x8e\x00\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\x80\x00\xff\xff\xff\xff\x83\x00\x5b\x00\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\x7a\x00\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\x80\x00\x8a\x00\x8b\x00\x83\x00\x8d\x00\x8e\x00\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\xff\xff\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\xff\xff\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\xff\xff\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\xff\xff\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\xff\xff\xff\xff\xff\xff\x1b\x00\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\x00\x00\xff\xff\x02\x00\x87\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\x8e\x00\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\x00\x00\x0a\x00\x02\x00\xff\xff\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x00\x00\xff\xff\x02\x00\x1b\x00\xff\xff\x05\x00\x06\x00\x07\x00\xff\xff\x09\x00\xff\xff\x0b\x00\x0c\x00\x0d\x00\x0e\x00\x0f\x00\x10\x00\x11\x00\x12\x00\x13\x00\x14\x00\x15\x00\x16\x00\x17\x00\x18\x00\xff\xff\xff\xff\x3c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\xff\xff\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\xff\xff\x4d\x00\x4e\x00\xff\xff\xff\xff\x51\x00\xff\xff\xff\xff\x54\x00\x55\x00\x56\x00\xff\xff\xff\xff\xff\xff\xff\xff\x5b\x00\xff\xff\xff\xff\xff\xff\x0a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x80\x00\xff\xff\xff\xff\x83\x00\xff\xff\xff\xff\xff\xff\x87\x00\xff\xff\xff\xff\x7a\x00\xff\xff\xff\xff\xff\xff\x8e\x00\xff\xff\xff\xff\xff\xff\xff\xff\x83\x00\x84\x00\x85\x00\xff\xff\xff\xff\xff\xff\x80\x00\x8a\x00\x8b\x00\x83\x00\x8d\x00\xff\xff\xff\xff\x87\x00\x3c\x00\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x8e\x00\x43\x00\xff\xff\x45\x00\xff\xff\xff\xff\xff\xff\x49\x00\x4a\x00\xff\xff\x80\x00\x4d\x00\x4e\x00\x83\x00\xff\xff\x51\x00\xff\xff\x87\x00\x54\x00\x55\x00\x56\x00\xff\xff\xff\xff\x00\x00\x8e\x00\x5b\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\x7a\x00\x22\x00\xff\xff\x24\x00\xff\xff\xff\xff\x27\x00\x28\x00\xff\xff\x83\x00\x84\x00\x85\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x8a\x00\x8b\x00\xff\xff\x8d\x00\xff\xff\xff\xff\x37\x00\xff\xff\xff\xff\x3a\x00\x3b\x00\x3c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x43\x00\x44\x00\xff\xff\x46\x00\xff\xff\x48\x00\x49\x00\xff\xff\xff\xff\xff\xff\x4d\x00\x4e\x00\x4f\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x6e\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#--happyTable :: HappyAddr-happyTable = HappyA# "\x00\x00\xae\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x2e\xfe\x88\x00\xe7\x03\x89\x00\xbb\x00\x18\x01\x2e\xfe\xa3\x01\x19\x01\xa7\x00\xa8\x00\x51\x04\xa7\x00\xa8\x00\x8a\x00\x8b\x00\x8c\x00\x5d\x03\xb0\x00\x8d\x00\x8e\x00\xb0\x00\x8f\x00\xf4\x02\xe9\x04\x90\x00\x91\x00\x92\x00\x68\x01\x6d\x01\x03\x04\x1b\x00\x1c\x00\x6e\x03\x72\x01\xbc\x00\x1b\x00\x1c\x00\xd6\x01\x1b\x00\x1c\x00\xf5\x02\xd2\x02\xa4\x01\x4a\x01\x6f\x03\xab\x02\x2e\xfe\x1a\x01\x1b\x01\x2e\xfe\x2e\xfe\x1c\x01\x1d\x01\x1e\x01\x2e\xfe\xd7\x01\x2e\xfe\x2e\xfe\x2e\xfe\x1f\x01\x20\x01\x21\x01\x2e\xfe\x2e\xfe\x2e\xfe\x22\x01\x2e\xfe\x2e\xfe\x93\x00\x2e\xfe\x2e\xfe\x23\x01\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x24\x01\x25\x01\x3b\x01\x2e\xfe\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xb0\x00\x78\x04\x2e\xfe\x2e\xfe\xca\x03\xd6\x02\x1b\x00\x1c\x00\x5d\x03\xaf\x03\xe3\x04\x2e\xfe\x2e\xfe\x2b\x01\x2e\xfe\x2e\xfe\x2e\xfe\x1b\x00\xd4\x02\x2d\x01\x3c\x01\xc9\x03\xe0\x04\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2f\x01\x2e\xfe\x1a\x02\xa1\x00\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x2e\xfe\x2e\xfe\x2e\xfe\x5d\x04\x5d\x03\x94\x03\xd1\x04\xa9\x00\xaa\x00\xab\x00\xa9\x00\x95\x03\xe7\x00\x6e\x01\xe8\x03\x8d\x04\x37\x04\xe4\x03\xe5\x03\xae\x02\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\x2e\xfe\xea\x02\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\xcb\x00\x88\x00\x1e\x02\x89\x00\xe5\x04\x18\x01\x05\xfe\x04\x04\x19\x01\x68\x01\xff\xff\x1f\x02\xe7\x00\xac\x02\x8a\x00\x8b\x00\x8c\x00\xeb\x02\xd2\x04\x8d\x00\x8e\x00\xdb\x01\x8f\x00\x1b\x00\x1c\x00\x90\x00\x91\x00\x92\x00\x1b\x00\x1c\x00\x1d\x00\x79\x04\xf7\x03\xf8\x03\xe1\x04\xe2\x04\xec\x02\x7a\x04\x5e\x03\xdc\x01\xe7\x00\xb1\x00\xd2\x02\xd2\x02\x4a\x01\xc9\x04\x3c\x03\xcc\x00\x1a\x01\x1b\x01\xcd\x00\xce\x00\x1c\x01\x1d\x01\x1e\x01\xcf\x00\x71\x04\xd0\x00\xd1\x00\xd2\x00\x1f\x01\x20\x01\x21\x01\xd3\x00\xd4\x00\xd5\x00\x22\x01\xd6\x00\xd7\x00\x93\x00\xd8\x00\xd9\x00\x23\x01\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x24\x01\x25\x01\x26\x01\xdf\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x5e\x03\x20\x02\x27\x01\x28\x01\xd2\x02\x1e\x04\x1b\x00\x1c\x00\x1b\x00\x1c\x00\xd7\x04\x29\x01\x2a\x01\x2b\x01\x2c\x01\xe0\x00\xe1\x00\xbd\x04\x5f\x03\x2d\x01\x2e\x01\xe9\x03\xd3\x02\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x2f\x01\xe7\x00\xe7\x00\xa1\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xec\x00\xed\x00\xee\x00\x1d\x00\xe7\x00\x1e\x00\xd2\x02\x95\x02\x96\x02\x97\x02\x98\x02\xd2\x02\x4a\x01\xab\x03\x1b\x00\x1c\x00\xac\x02\xdd\x02\x1b\x00\xb3\x03\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xf3\x02\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\xcb\x00\x88\x00\xfb\x02\x89\x00\x1b\x00\xb3\x03\x58\x03\xb1\x02\x51\xff\x4a\x01\x1b\x02\x18\x02\xf1\x01\xa4\x00\x8a\x00\x8b\x00\x8c\x00\xd5\x02\xd6\x02\x8d\x00\x8e\x00\xd2\x02\x8f\x00\x58\x03\xb2\x02\x90\x00\x91\x00\x92\x00\xa5\x00\x9f\x04\x4b\x03\xa4\x02\x22\x04\xac\x00\x64\x00\x4d\x03\x65\x00\xfb\x03\x80\x04\x66\x00\x67\x00\x68\x00\xd4\x01\x69\x00\xa4\xfd\xd7\x01\xfc\x03\xcc\x00\x76\x01\x65\x03\xcd\x00\xce\x00\x93\x04\xa6\x02\xa7\x02\xcf\x00\xee\x03\xd0\x00\xd1\x00\xd2\x00\x1c\x02\xd5\x01\xfc\x02\xd3\x00\xd4\x00\xd5\x00\x4b\x01\xd6\x00\xd7\x00\x93\x00\xd8\x00\xd9\x00\xa0\x04\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xb4\x03\xb5\x03\xb6\x03\xdf\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x54\x03\xa9\x04\x27\x01\x1b\x00\xcc\x02\xac\x00\xcd\x02\x96\x01\x1b\x00\x1c\x00\x1b\x00\xee\x01\x2b\x03\xef\x01\x76\x01\xe0\x00\xe1\x00\x7d\x03\x2d\x03\x96\x01\x88\x04\xb6\x03\xaf\x04\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xad\x00\xe7\x00\x2d\x03\xa1\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xec\x00\xed\x00\xee\x00\xda\x03\x79\x00\x1b\x00\xf4\x01\x7a\x00\xf5\x01\x8c\x01\xcb\x04\x7b\x00\x2b\x03\xb2\x04\x42\x03\x55\x04\xdb\x03\xcc\x04\x7d\x00\x6f\x03\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x1f\x03\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\xac\x02\x88\x00\x39\x02\x89\x00\x20\x03\xcb\xff\xf0\x01\xf1\x01\x58\x03\xb4\x04\x15\x03\xfc\x01\x76\x01\x5d\x03\x8a\x00\x8b\x00\x21\x03\xdc\x03\xab\x01\x8d\x00\x8e\x00\x3a\x02\x8f\x00\x64\x04\xfd\x01\x90\x00\x91\x00\x92\x00\x57\x02\x91\x03\x58\x02\x58\x03\x92\x03\xa4\x02\xb0\x03\x64\x00\x72\x01\x65\x00\x59\x02\x5a\x02\x66\x00\x67\x00\x68\x00\x16\x03\x69\x00\x76\x01\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x7e\x02\xce\x00\x5b\x02\x5c\x02\xa5\x02\xa6\x02\xa7\x02\xce\x03\x18\x04\x18\x01\xb1\x04\x5b\x03\x71\x01\xf6\x01\xf1\x01\xf8\x01\xf9\x01\xc3\x00\xc4\x00\x93\x00\x22\x03\x22\x03\x7a\x01\x41\x03\x7c\x01\xc5\x00\xfe\x01\xde\x00\xfa\x01\xe5\x02\x7e\x01\x6e\x04\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xcf\xfd\xcf\xfd\xdd\x03\xc3\x00\xc4\x00\x70\x01\x71\x01\xa2\x04\x92\x01\x7a\x01\x7a\x03\xc5\x00\x01\x04\x93\x01\x94\x01\x95\x01\x96\x01\x97\x01\x1b\x02\x18\x02\xf1\x01\x7f\x03\x7b\x03\xe2\x00\xe3\x00\xad\x04\x98\x01\x99\x01\x76\x04\xcf\xfd\x72\x01\xa1\x00\xae\x04\x80\x03\xfb\x01\xde\x03\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xe5\x02\xb8\x04\xb1\x03\x8f\x04\x76\x01\x79\x00\x1e\x02\xb3\x02\x7a\x00\x01\x02\xcb\x00\xa8\x04\x7b\x00\xb4\x02\xb2\x03\x18\x01\x68\x01\xcf\xfd\xcf\xfd\x7d\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x99\x03\x52\x04\x91\x04\x16\x04\x5d\x02\xcf\xfd\x76\x01\xb3\x02\x17\x04\x01\x02\x8e\x02\x50\x01\x9d\x01\xb4\x02\xe6\x02\xe7\x00\xcc\x00\x68\x01\x9a\x03\xcd\x00\xce\x00\x3d\x03\x3e\x03\x2b\x03\xcf\x00\x83\x01\xd0\x00\xd1\x00\xd2\x00\x84\x04\x96\x01\x84\x01\xd3\x00\xd4\x00\xd5\x00\xf3\x03\xd6\x00\xd7\x00\x50\x01\xd8\x00\xd9\x00\x2d\x03\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xf4\x03\x3f\x03\x40\x03\xdf\x00\x24\x04\x76\x01\x72\x01\xc3\x00\xc4\x00\x25\x04\x54\x04\xf7\x02\x55\x04\x56\x04\xe4\x01\xc5\x00\x17\x04\xc0\x00\x92\x01\x7a\x01\xc5\x02\xc6\x02\xc1\x00\x93\x01\x94\x01\x9f\x01\x96\x01\x97\x01\x68\x01\xf8\x02\x8c\x01\x68\x01\xe5\x01\xc7\x02\xc8\x02\xc6\x00\xa0\x01\x99\x01\x50\x01\x73\x01\x70\x03\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe6\x02\xe7\x00\xac\x02\x36\x03\xe8\x00\xe9\x00\xea\x00\xeb\x00\x91\x02\x4d\x01\xc3\x00\xc4\x00\x50\x01\x57\x04\x4f\x01\x8c\x04\xb6\x04\x5b\x03\xc5\x00\x2b\x03\x92\x02\x50\x01\x18\x03\x8a\x01\x2c\x03\xcb\x00\x96\x01\xd8\x03\xc0\x00\xce\x01\x95\x04\x8d\x04\x51\x01\xc1\x00\xec\x00\xed\x00\xee\x00\x2d\x03\x19\x03\x1a\x03\xcf\x01\xc9\x00\x52\x01\xba\x04\xbb\x04\xbc\x04\xc6\x00\x7b\x04\x7c\x04\x7d\x04\x62\x04\x5b\x03\xbd\x04\x7e\x04\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\xb1\x02\xc6\x04\xb4\x04\xcf\x00\xc0\x04\xd0\x00\x0b\x04\xd2\x00\x7e\x04\x11\x04\x6a\x04\xd3\x00\xd4\x00\xc7\x04\x9c\x04\xd6\x00\xd7\x00\xb2\x02\x68\x01\xd9\x00\xfb\x03\xc9\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x9d\x04\x49\x03\xc0\x00\xdf\x00\xd9\x03\x01\x04\x19\x04\xc1\x00\x58\x04\x59\x04\x35\x04\xf8\x01\xf9\x01\xc3\x00\xc4\x00\x68\x01\xbe\x04\xbb\x04\xbc\x04\xac\x02\xc6\x00\xc5\x00\x54\x01\xd3\x03\xfa\x01\xbd\x04\x4d\x01\xc3\x00\xc4\x00\x2c\x04\x6b\x04\x4f\x01\x31\x04\x55\x01\x56\x01\xc5\x00\x96\x01\x8b\x02\x50\x01\x32\x04\x86\x04\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x8c\x02\x99\x01\x9e\x03\x51\x01\xe8\x00\xe9\x00\x87\x04\xeb\x00\x12\x04\x65\x04\x5b\x03\x68\x01\x13\x04\x52\x01\x9f\x03\x1d\x04\xf3\x01\xc0\x00\x4a\x04\x68\x01\x61\x03\x2e\x03\xc1\x00\x58\x03\x40\x01\xcb\x00\xc9\x00\x64\x00\x62\x03\x65\x00\xfb\x01\x1e\x04\x66\x00\x67\x00\x68\x00\xc6\x00\x69\x00\x61\x02\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x62\x02\x1b\x00\x72\x04\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\x60\x04\xa0\x03\xb3\x02\xcf\x00\x01\x02\xd0\x00\x6c\x04\xd2\x00\xb4\x02\xa2\x03\xc9\x00\xd3\x00\xd4\x00\xa1\x03\x02\x04\xd6\x00\xd7\x00\x68\x01\x68\x01\xd9\x00\x53\x04\xa3\x03\xdb\x00\xdc\x00\xdd\x00\xde\x00\x68\x01\xa4\xfd\x80\x04\xdf\x00\x5e\x04\x9f\xfd\x80\x04\xff\x03\xa4\xfd\x64\x00\x36\x04\x65\x00\x9f\xfd\x94\x02\x66\x00\x67\x00\x68\x00\x37\x04\x69\x00\x00\x04\xd7\x01\x2d\x02\x54\x01\xd3\x03\x01\x04\x95\x02\x61\x04\x8b\x01\xc3\x00\xc4\x00\x68\x01\x69\x01\x6a\x01\x55\x01\x56\x01\x4c\x04\xc5\x00\x6b\x01\x6c\x01\x8c\x01\x58\x03\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x6d\x01\x96\x01\x8b\x02\x4e\x04\xe8\x00\xe9\x00\x79\x00\xeb\x00\x58\x03\x7a\x00\x56\x03\x8e\x02\x99\x01\x7b\x00\x8d\x01\xd1\x03\x83\x01\x26\x04\xf1\x01\x67\x04\x7d\x00\x68\x04\x84\x01\x69\x04\x6a\x04\xcb\x00\x29\x04\x64\x00\x80\x00\x65\x00\x90\x03\xd2\x03\x66\x00\x67\x00\x68\x00\x68\x01\x69\x00\x63\x03\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x07\x04\xce\x00\x63\x02\x65\x03\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\xde\x00\x43\x03\x45\x03\xcf\x00\x9d\x01\xd0\x00\xac\x02\xd2\x00\x30\x03\x47\x04\x9d\x01\xd3\x00\xd4\x00\x29\x03\x79\x00\xd6\x00\xd7\x00\x7a\x00\x2b\x03\xd9\x00\x9d\x01\x7b\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x8c\x01\x4a\x03\x7d\x00\xdf\x00\x96\x01\x8b\x02\x27\x04\x68\x00\xf8\x01\xf9\x01\xc3\x00\xc4\x00\x32\x04\x68\x00\x92\x02\x99\x01\xe2\x00\xe3\x00\xc5\x00\x96\x01\x8b\x02\xfa\x01\x54\x01\xd3\x03\xd3\x04\xd4\x04\xd5\x04\xb6\x01\xb7\x01\x9c\x02\x99\x01\xb8\x01\x68\x00\x55\x01\x56\x01\xe1\x02\xe2\x02\x2e\x03\xe3\x02\xf1\x01\x45\x03\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x41\x02\x42\x02\x43\x02\x44\x02\xe8\x00\xe9\x00\x79\x00\xeb\x00\x93\x03\x7a\x00\xd9\x04\xd4\x04\xd5\x04\x7b\x00\x9a\x03\x92\x04\x18\x02\xf1\x01\x4f\x04\x5b\x03\x7d\x00\x0a\x04\x18\x02\xf1\x01\x0d\x04\x18\x02\xf1\x01\xfb\x01\xa4\x03\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x10\x04\x18\x02\xf1\x01\x76\x01\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\xcb\x00\x88\x00\x30\x03\x89\x00\x9d\x01\x18\x01\x1b\x00\x52\x04\x19\x01\xf5\x03\x18\x02\xf1\x01\xe0\x03\x78\x01\x8a\x00\x8b\x00\x8c\x00\x1b\x00\x5c\x04\x8d\x00\x8e\x00\x47\x03\x8f\x00\x9d\x01\xa9\x03\x90\x00\x91\x00\x92\x00\x79\x01\x7a\x01\x7b\x01\x7c\x01\xe1\x01\x64\x00\x8e\x02\x65\x00\x9d\x01\x7e\x01\x66\x00\x67\x00\x68\x00\x68\x01\x69\x00\xfe\x03\xd7\x01\x6b\x00\x7a\x02\xcc\x00\x1a\x01\x1b\x01\xcd\x00\xce\x00\x1c\x01\x1d\x01\x1e\x01\xcf\x00\xac\x02\xd0\x00\xd1\x00\xd2\x00\x1f\x01\x20\x01\x21\x01\xd3\x00\xd4\x00\xd5\x00\x22\x01\xd6\x00\xd7\x00\x93\x00\xd8\x00\xd9\x00\x23\x01\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x24\x01\x25\x01\x26\x01\xdf\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x5a\x03\x5b\x03\x27\x01\x28\x01\xa1\x02\x18\x02\xf1\x01\xa3\x02\x18\x02\xf1\x01\xd4\x03\x29\x01\x2a\x01\x2b\x01\x2c\x01\xe0\x00\xe1\x00\x9c\x03\x68\x00\x2d\x01\x2e\x01\xac\x03\xf1\x01\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x2f\x01\xe7\x00\xe3\x03\xa1\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xec\x00\xed\x00\xee\x00\x79\x00\x1b\x00\x65\x02\x7a\x00\x31\x03\xc3\x00\xc4\x00\x7b\x00\xa9\x02\x18\x02\xf1\x01\x1b\x00\x66\x02\xc5\x00\x7d\x00\xed\x03\x32\x03\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\xcb\x00\x88\x00\x9b\x02\x89\x00\x7f\x00\x18\x01\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x8a\x02\x68\x00\x8a\x00\x8b\x00\x8c\x00\x3a\x03\xf1\x01\x8d\x00\x8e\x00\x33\x03\x8f\x00\x1b\x00\x50\x03\x90\x00\x91\x00\x92\x00\xa0\x02\x2b\x03\x64\x00\x9d\x01\x65\x00\x51\x03\x52\x03\x66\x00\x67\x00\x68\x00\x30\x03\x69\x00\x9d\x01\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x86\x02\xcd\x00\xce\x00\x17\x02\x18\x02\xf1\x01\xcf\x00\x45\x03\xd0\x00\x9d\x01\xd2\x00\x49\x02\x4a\x02\x4b\x02\xd3\x00\xd4\x00\xb5\x00\xb6\x00\xd6\x00\xd7\x00\x93\x00\x47\x03\xd9\x00\x9d\x01\xac\x02\xdb\x00\xdc\x00\xdd\x00\xde\x00\xed\x01\x68\x00\xad\x02\xdf\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\x76\x01\xb7\x00\xb8\x00\x36\x02\x37\x02\x03\x01\x04\x01\x98\x04\x99\x04\x58\x03\x71\x01\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xb4\x02\x21\x04\xcd\x03\xa1\x00\xe8\x00\xe9\x00\xd1\x02\xeb\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x79\x00\x58\x03\x71\x01\x7a\x00\x72\x03\x8e\x03\x8f\x03\x7b\x00\xd8\x02\x79\x01\x7a\x01\x7b\x01\x7c\x01\x87\x01\x7d\x00\xe6\x02\xe7\x00\xfc\x02\x7e\x01\x04\x03\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\xcb\x00\x27\x02\x05\x03\x89\x00\xcc\x03\xcd\x03\x3f\x02\x40\x02\xc8\x02\xc9\x02\xc3\x00\xc4\x00\x45\x02\x46\x02\x8a\x00\x8b\x00\x8c\x00\x06\x03\xc5\x00\x8d\x00\x8e\x00\xca\x02\x8f\x00\x47\x02\x48\x02\x90\x00\x91\x00\x92\x00\x36\x03\x71\x01\x64\x00\x10\x03\x65\x00\x3f\x02\x40\x02\x66\x00\x67\x00\x68\x00\x13\x03\x69\x00\x29\x03\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x85\x02\x2e\x03\xcd\x00\xce\x00\x45\x02\x46\x02\x34\x03\xcf\x00\x37\x03\xd0\x00\x38\x03\xd2\x00\x47\x02\x48\x02\x43\x03\xd3\x00\xd4\x00\x8c\x01\x3c\x03\xd6\x00\xd7\x00\x93\x00\x45\x03\xd9\x00\x4c\x03\xcb\x02\xdb\x00\xdc\x00\xdd\x00\xde\x00\x4e\x03\x4f\x03\x53\x03\xdf\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xf7\x01\x90\x01\xa1\x01\xb3\x01\xb5\x01\xc6\x01\xcf\x01\xf8\x01\xf9\x01\xc3\x00\xc4\x00\xeb\x01\xab\x00\xb9\x00\xe9\x04\x36\x02\x37\x02\xc5\x00\xe7\x04\xdc\x01\xfa\x01\xe8\x04\xd7\x04\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xe6\x04\xdd\x04\xdf\x04\xa1\x00\xe8\x00\xe9\x00\xe0\x04\xeb\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x79\x00\x18\x01\xd7\x04\x7a\x00\x80\x04\xd9\x04\xd7\x04\x7b\x00\xdb\x04\xdc\x04\xfb\x01\xcd\x04\xce\x04\xd0\x04\x7d\x00\xcf\x04\xc0\x04\xd1\x04\xc2\x04\x80\x04\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\xc3\x04\x88\x00\xc8\x04\x89\x00\x85\x03\x9f\x04\xab\x04\xa3\x04\xac\x04\x18\x01\xb1\x04\xaf\x04\x72\x01\x71\x01\x8a\x00\x8b\x00\x86\x03\x72\x01\x64\x04\x8d\x00\x8e\x00\x71\x01\x8f\x00\x72\x01\x01\x02\x90\x00\x91\x00\x92\x00\x71\x04\x40\x01\x76\x04\x74\x04\x64\x00\x75\x04\x65\x00\x82\x04\x18\x01\x66\x00\x67\x00\x68\x00\x81\x04\x69\x00\x7b\x04\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x7f\x02\x02\x02\x71\x01\x08\x01\xce\x00\x09\x01\x88\x04\xbd\x00\xe7\x00\xbe\x00\x8a\x04\x91\x04\xbf\x00\xc0\x00\xe7\x00\x95\x04\x76\x01\x18\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x93\x00\x87\x03\x05\x04\x0a\x04\xe7\x00\x18\x01\xc5\x00\x40\x01\xde\x00\xc6\x00\x0f\x04\x10\x04\x15\x04\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\xe7\x00\xe7\x00\x48\x03\xc7\x00\x23\x04\x64\x00\xe7\x00\x65\x00\x2a\x04\x71\x01\x66\x00\x67\x00\x68\x00\x80\x00\x69\x00\x3b\x04\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x84\x02\xe2\x00\xe3\x00\x3c\x04\x79\x01\x7a\x01\x7b\x01\x7c\x01\xff\x01\xa1\x00\x44\x04\x34\x04\xc9\x00\x7e\x01\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x46\x04\x49\x04\x79\x00\x4b\x04\x4d\x04\x7a\x00\x4f\x04\x59\x03\x40\x01\x7b\x00\x5a\x03\xe7\x00\x88\x03\x71\x01\x03\x02\x04\x02\x7d\x00\x7c\x03\x05\x02\x06\x02\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x7d\x03\x88\x00\x80\x00\x89\x00\x71\x01\x9c\x03\x8d\x03\x4f\xff\xa6\x03\xab\x03\xe7\x00\x76\x01\x68\x01\xae\x03\x8a\x00\x8b\x00\x8c\x00\xa9\x03\xb3\x03\x8d\x00\x8e\x00\x79\x00\x8f\x00\x40\x01\x7a\x00\x90\x00\x91\x00\x92\x00\x7b\x00\xeb\x03\xe3\x03\xec\x03\xf0\x03\x1b\x02\xf1\x03\x7d\x00\xf5\x03\x4c\x02\x4d\x02\x4e\x02\x4f\x02\x50\x02\x51\x02\x52\x02\x53\x02\x54\x02\x55\x02\x56\x02\x07\x01\xf2\x03\x08\x01\xce\x00\x09\x01\xe7\x00\xbd\x00\x66\x03\xbe\x00\xf7\x03\x60\x02\xbf\x00\xc0\x00\xfb\x03\x3c\x02\x3b\x02\x3e\x02\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x93\x00\x79\x01\x7a\x01\x7b\x01\x7c\x01\xe1\x01\xc5\x00\x3d\x02\xde\x00\xc6\x00\x7e\x01\x01\x04\x80\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x90\x02\xcd\x00\xce\x00\xc7\x00\x18\x01\xe7\x00\xcf\x00\x40\x01\xd0\x00\x71\x01\xd2\x00\xda\x02\xdb\x02\xef\x02\xd3\x00\xd4\x00\x48\x03\xe6\x02\xd6\x00\xd7\x00\x18\x01\x01\x03\xd9\x00\xe2\x00\xe3\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x02\x03\x03\x03\xa1\x00\x04\x03\x10\x03\xc9\x00\x18\x01\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x49\x03\x92\x01\xff\xff\xff\xff\x9f\x01\xff\xff\xff\xff\xc8\x01\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xb3\x01\xe7\x00\xc9\x01\xca\x01\xe8\x00\xd2\x01\xff\xff\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x1b\x00\xcb\x00\x28\x03\x29\x03\x9d\x01\xe3\x01\xff\xff\xe6\x01\xea\x01\xe9\x01\xeb\x01\x80\x00\xf3\x01\xff\xff\x01\x02\xff\xff\x22\x02\x83\x01\x17\x02\x16\x02\x1b\x02\x68\x01\x3b\x02\x84\x01\x38\x02\x3c\x02\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x3d\x02\xcc\x00\x3e\x02\xff\xff\xcd\x00\xce\x00\xff\xff\x5e\x02\x60\x02\xcf\x00\x1b\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\xff\xff\xff\xff\xd3\x00\xd4\x00\xd5\x00\xff\xff\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x43\x00\x4d\x01\xc3\x00\xc4\x00\x1a\x04\xcf\x02\x4f\x01\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\x47\x01\x00\x00\x52\x01\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xec\x00\xed\x00\xee\x00\x1b\x00\xcb\x00\x00\x00\x6a\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x76\x01\x00\x00\x00\x00\x00\x00\x8e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8f\x01\x86\x01\x00\x00\x00\x00\x00\x00\x00\x00\x79\x01\x7a\x01\x7b\x01\x7c\x01\x87\x01\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\x47\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xec\x00\xed\x00\xee\x00\x1b\x00\xcb\x00\x00\x00\x6d\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x00\x00\x00\x00\x00\x00\x76\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x43\x00\x77\x01\x78\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x01\x7a\x01\x7b\x01\x7c\x01\x7d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x01\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\x47\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xec\x00\xed\x00\xee\x00\x1b\x00\xcb\x00\x00\x00\x76\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x76\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x85\x01\x86\x01\x00\x00\x00\x00\x00\x00\x00\x00\x79\x01\x7a\x01\x7b\x01\x7c\x01\x87\x01\x00\x00\x00\x00\x00\x00\x00\x00\x7e\x01\x00\x00\x00\x00\x00\x00\x76\x01\x00\x00\xe0\x00\xe1\x00\x46\x01\x47\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xec\x00\xed\x00\xee\x00\xcb\x00\x89\x01\x86\x01\x00\x00\x00\x00\x00\x00\x00\x00\x79\x01\x7a\x01\x7b\x01\x7c\x01\x87\x01\x00\x00\x00\x00\xa7\x00\xa8\x00\x7e\x01\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x00\x00\x00\x00\x76\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x77\x01\x78\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x02\x00\x00\x27\x01\x79\x01\x7a\x01\x7b\x01\x7c\x01\xe1\x01\x12\x02\x13\x02\x14\x02\x00\x00\x7e\x01\x00\x00\x00\x00\xe0\x00\xe1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x70\x04\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x82\x02\x00\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa7\x00\xa8\x00\x00\x00\x00\x00\xa9\x00\xaa\x00\xab\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x4d\x01\xc3\x00\xc4\x00\xce\x03\xcf\x02\x4f\x01\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x11\x02\x50\x01\x27\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x12\x02\x13\x02\x14\x02\x00\x00\x51\x01\x00\x00\x79\x00\xe0\x00\xe1\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x52\x01\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x7d\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x15\x02\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x83\x02\x00\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x71\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa7\x00\xa8\x00\x00\x00\xa9\x00\xaa\x00\xab\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x00\x00\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x4d\x01\xc3\x00\xc4\x00\xd3\x03\xcf\x02\x4f\x01\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\x00\x00\x00\x00\x00\x00\x27\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\xe0\x00\xe1\x00\x7a\x00\x00\x00\x52\x01\x00\x00\x7b\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x7d\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\xb6\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x80\x02\x00\x00\x00\x00\xcb\x00\xec\x00\xed\x00\xee\x00\x09\x02\x0a\x02\xbc\x00\x0b\x02\x71\x01\x00\x00\x00\x00\x00\x00\x00\x00\xa9\x00\xa7\x00\xa8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x4d\x01\xc3\x00\xc4\x00\xce\x02\xcf\x02\x4f\x01\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\x00\x00\x00\x00\x00\x00\x27\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\xe0\x00\xe1\x00\x7a\x00\x00\x00\x52\x01\x00\x00\x7b\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x7d\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x63\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x81\x02\x00\x00\x00\x00\xcb\x00\xec\x00\xed\x00\xee\x00\x09\x02\x0a\x02\xbc\x00\x0b\x02\x71\x01\x00\x00\x00\x00\x00\x00\x00\x00\xa9\x00\xa7\x00\xa8\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\x00\x00\x28\x02\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\x00\x00\x00\x00\x00\x00\x27\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\xce\x00\x00\x00\x00\x00\x79\x00\xe0\x00\xe1\x00\x7a\x00\x00\x00\x52\x01\x00\x00\x7b\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x7d\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x08\x02\xde\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x29\x02\x18\x02\xf1\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\x00\x8e\x02\x29\x03\x9d\x01\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x09\x02\x0a\x02\xbc\x00\x0b\x02\x00\x00\x00\x00\x00\x00\x83\x01\x00\x00\xa9\x00\x00\x00\x00\x00\x00\x00\x84\x01\xe2\x00\xe3\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\x47\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x7c\x02\x00\x00\x00\x00\x00\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x7d\x02\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\xcf\x03\x4f\x01\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x63\x01\x50\x01\x27\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x01\x65\x01\xe8\x01\x00\x00\x51\x01\x00\x00\x79\x00\xe0\x00\xe1\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x52\x01\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x7d\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x66\x01\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x7b\x02\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\x8e\x04\x4f\x01\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\x00\x00\x00\x00\x00\x00\x27\x01\x28\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\x29\x01\x2a\x01\x00\x00\x2c\x01\xe0\x00\xe1\x00\x00\x00\x00\x00\x52\x01\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x4d\x01\xc3\x00\xc4\x00\x7b\x00\xcf\x03\x4f\x01\x00\x00\x00\x00\x00\x00\xc5\x00\x7d\x00\xcb\x00\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x51\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x77\x02\x52\x01\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\x00\x00\x32\x02\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\x63\x01\x00\x00\x27\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x01\x65\x01\x51\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x92\x03\x00\x00\x00\x00\x52\x01\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x66\x01\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x4d\x01\xc3\x00\xc4\x00\x7b\x00\xcf\x03\x4f\x01\x00\x00\x00\x00\x00\x00\xc5\x00\x7d\x00\xcb\x00\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x51\x01\x48\x04\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x78\x02\x52\x01\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb7\x02\x00\x00\xb8\x02\x00\x00\xb9\x02\x00\x00\xba\x02\x00\x00\xbb\x02\x00\x00\x00\x00\x00\x00\xbc\x02\xbd\x02\x00\x00\x00\x00\xbe\x02\xbf\x02\xc3\x00\xc4\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\x1c\x03\xc5\x00\x00\x00\x00\x00\xc0\x02\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\xc1\x02\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc2\x02\x7d\x00\xcb\x00\x00\x00\x78\x03\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x00\x00\xc3\x02\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x79\x02\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\x00\x00\x32\x02\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\x47\x01\xec\x03\x00\x00\x00\x00\x52\x01\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x4d\x01\xc3\x00\xc4\x00\x7b\x00\x00\x00\x32\x02\x00\x00\x00\x00\x00\x00\xc5\x00\x7d\x00\xcb\x00\x50\x01\x00\x00\x00\x00\x00\x00\x18\x01\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x51\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\xa2\x02\xd7\x01\x24\x02\x52\x01\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\x00\x00\x32\x02\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\x00\x00\x00\x00\x27\x01\xd8\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\xab\x02\x00\x00\x00\x00\x52\x01\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x4d\x01\xc3\x00\xc4\x00\x7b\x00\xb5\x02\x4f\x01\x00\x00\x00\x00\x00\x00\xc5\x00\x7d\x00\xcb\x00\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x51\x01\xba\x04\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x2b\x02\x52\x01\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd5\x03\x00\x00\x08\x01\x00\x00\x09\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\xc7\x00\x00\x00\x7a\x00\x4d\x01\xc3\x00\xc4\x00\x7b\x00\x4e\x01\x4f\x01\x00\x00\x00\x00\xd6\x03\xc5\x00\x7d\x00\xcb\x00\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x51\x01\x00\x00\x66\x00\x67\x00\x68\x00\xc9\x00\x69\x00\x00\x00\xd7\x01\x2c\x02\x52\x01\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\x47\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x18\x01\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x2d\x02\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x07\x01\x00\x00\x08\x01\x00\x00\x09\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\xc5\x02\xc6\x02\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\xc7\x02\xc8\x02\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\xb4\x01\x00\x00\x00\x00\x7d\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x00\x00\xc9\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x2e\x02\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\x1c\x03\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x2f\x02\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\x47\x01\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x22\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x56\x01\x00\x00\x08\x01\x00\x00\x09\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\xe0\x00\xe1\x00\x46\x01\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\xc7\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\xc9\x00\x69\x00\x00\x00\x25\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x07\x01\x00\x00\x08\x01\x00\x00\x09\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x27\x01\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\xe0\x00\xe1\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\xe0\x01\x00\x00\x00\x00\x7d\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x64\x00\x00\x00\x65\x00\x00\x00\xc9\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x27\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\xd8\x01\xe0\x00\xe1\x00\x00\x00\x71\x03\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xea\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x6e\x04\x00\x00\x71\x01\xec\x00\xed\x00\xee\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x79\x00\xd6\x00\xd7\x00\x7a\x00\x00\x00\xd9\x00\x00\x00\x7b\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x7d\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x55\x01\x56\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\x00\x00\xeb\x00\x5c\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x5b\x04\x65\x00\x71\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x88\x02\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x54\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x55\x01\x56\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\xb8\x04\x00\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\xc7\x00\xeb\x00\x5c\x04\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1c\x04\xd1\x01\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x54\x01\xd3\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x55\x01\x56\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\x00\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\xbc\x00\xdf\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x54\x01\xd1\x02\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x55\x01\x56\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\xc7\x00\xe8\x00\xe9\x00\x00\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcb\x00\xb7\x02\x00\x00\xc8\x00\x00\x00\x00\x00\x64\x00\xed\x01\x65\x00\xc9\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x1b\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x87\x02\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x54\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x55\x01\x56\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\x00\x00\xeb\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\xcb\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x54\x01\xd1\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x55\x01\x56\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\x00\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\xcb\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x11\x03\x77\x00\x78\x00\x00\x00\x12\x03\x00\x00\xcb\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xcd\x00\xce\x00\x00\x00\xdf\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x54\x01\x00\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x55\x01\x56\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x79\x00\xe8\x00\xe9\x00\x7a\x00\xeb\x00\x00\x00\x00\x00\x7b\x00\x30\x02\x00\x00\x00\x00\x00\x00\x36\x02\x37\x02\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\x00\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcb\x00\x2b\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\xcd\x00\xce\x00\x00\x00\xdf\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\x00\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe8\x00\xe9\x00\x00\x00\xeb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x87\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\xe2\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x81\x01\x82\x01\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x48\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x83\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\xb3\x00\xe7\x03\xa2\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\x00\x00\x00\x00\x00\x00\x85\x01\xa4\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x00\x00\x00\x00\x42\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x0e\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x44\x00\x45\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x9a\x02\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x21\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0f\x03\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x00\x00\x00\x00\x42\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfa\x03\x00\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x00\x00\x00\x00\xba\x01\x00\x00\xbb\x01\x00\x00\x40\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x45\x00\x00\x00\xbc\x01\xbd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x21\x00\x00\x00\x00\x00\x64\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\xbe\x01\x00\x00\x42\x00\x43\x00\x00\x00\xbf\x01\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x01\x00\x00\xc2\x01\xc3\x01\x00\x00\xc4\x01\xc5\x01\xc6\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x00\x00\x00\x00\xba\x01\x00\x00\xbb\x01\x00\x00\x40\x01\x44\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbc\x01\xbd\x01\x00\x00\x46\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xaf\x00\x00\x00\x00\x00\x64\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\x00\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x1b\x00\x00\x00\x42\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xbf\x01\x00\x00\x00\x00\x00\x00\x00\x00\xc0\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x01\x00\x00\xc2\x01\x00\x00\x00\x00\x00\x00\x00\x00\xc6\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x45\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x47\x00\xaf\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb0\x00\xa9\x02\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x00\x00\x00\x00\x42\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x45\x00\x00\x00\xb3\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb0\x00\xe1\x02\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x18\x01\x00\x00\x00\x00\x19\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x01\x1b\x01\x00\x00\x00\x00\x1c\x01\x1d\x01\x1e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x01\x20\x01\x21\x01\x00\x00\x00\x00\x00\x00\x22\x01\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x23\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x01\x25\x01\x3b\x01\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x01\x3c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x01\xe7\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xa8\x03\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x18\x01\x00\x00\x00\x00\x19\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x01\x1b\x01\x00\x00\x00\x00\x1c\x01\x1d\x01\x1e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x01\x20\x01\x21\x01\x00\x00\x00\x00\x00\x00\x22\x01\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x23\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x01\x25\x01\x3b\x01\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x01\x3c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x01\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xee\x02\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x18\x01\x00\x00\x00\x00\x19\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x01\x1b\x01\x00\x00\x00\x00\x1c\x01\x1d\x01\x1e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x01\x20\x01\x21\x01\x00\x00\x00\x00\x00\x00\x22\x01\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x23\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x01\x25\x01\x3b\x01\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x01\x3c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x01\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xae\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x18\x01\x00\x00\x00\x00\x19\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x01\x1b\x01\x00\x00\x00\x00\x1c\x01\x1d\x01\x1e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x01\x20\x01\x21\x01\x00\x00\x00\x00\x00\x00\x22\x01\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x23\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x01\x25\x01\x3b\x01\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x01\x3c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x01\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x8b\x03\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\xaa\x01\x00\x00\x40\x01\x8c\x03\x00\x00\x00\x00\x00\x00\x00\x00\xab\x01\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0b\x02\x00\x00\x08\x01\x00\x00\x58\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0c\x02\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\xc9\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x6b\x02\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x6c\x02\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x0d\x02\x8f\x00\x0e\x02\x0f\x02\x90\x00\x91\x00\x92\x00\x48\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x0c\x04\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x65\x02\x65\x00\x3c\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\xc9\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x3d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x1b\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xa5\x04\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\xa6\x04\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x01\x08\x04\xa6\x01\xa7\x01\xa8\x01\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x4d\x01\x20\x04\x00\x00\x00\x00\x93\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x1b\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xff\x02\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x01\xd8\x02\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x1b\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xcc\x01\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcd\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x01\xd8\x02\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x69\x02\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x80\x01\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x1b\x00\x81\x01\x82\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4c\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x83\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x43\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\xd8\x01\xa1\x00\x00\x00\x00\x00\x12\x03\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x85\x01\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x18\x01\x00\x00\x00\x00\x19\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x1a\x01\x1b\x01\x00\x00\x00\x00\x1c\x01\x1d\x01\x1e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x01\x20\x01\x21\x01\x00\x00\x00\x00\x00\x00\x22\x01\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x23\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x01\x25\x01\x26\x01\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x01\xb2\x01\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x01\x2e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x01\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x18\x01\x00\x00\x00\x00\x19\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x01\x1b\x01\x00\x00\x00\x00\x1c\x01\x1d\x01\x1e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x01\x20\x01\x21\x01\x00\x00\x00\x00\x00\x00\x22\x01\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x23\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x01\x25\x01\x26\x01\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x01\x39\x01\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x01\x2e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x01\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x18\x01\x00\x00\x00\x00\x19\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1a\x01\x1b\x01\x00\x00\x00\x00\x1c\x01\x1d\x01\x1e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1f\x01\x20\x01\x21\x01\x00\x00\x00\x00\x00\x00\x22\x01\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x23\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x24\x01\x25\x01\x3b\x01\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x01\x3c\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x01\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x01\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x76\x01\x88\x00\x00\x00\xaa\x01\x00\x00\x40\x01\x9e\x04\x00\x00\x00\x00\x00\x00\x00\x00\xab\x01\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x22\x03\x7a\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\x01\x78\x03\x93\x00\x24\x03\x00\x00\x25\x03\x44\x01\x00\x00\x00\x00\x00\x00\x26\x03\x99\x01\xc7\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\xaa\x01\x00\x00\x40\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xab\x01\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x3c\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x3d\x01\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\xac\x01\x00\x00\x00\x00\x00\x00\x00\x00\x25\x04\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x1b\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x9b\x04\x89\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x7d\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x43\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\xd8\x01\x4d\x01\x00\x00\x93\x00\x30\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x65\x02\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x79\x00\x40\x01\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x7d\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x3c\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x3d\x01\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x04\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x1b\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x84\x04\x89\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x7d\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x48\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x49\x01\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x65\x02\x65\x00\x3c\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\xc9\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x3d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa4\x01\xa5\x01\xa6\x01\xa7\x01\xa8\x01\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x07\x04\x65\x00\x3c\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x3d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x3e\x04\x00\x00\x00\x00\x00\x00\x00\x00\x88\x03\x00\x00\x89\x03\xa7\x01\xa8\x01\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xef\x02\x2b\x04\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x40\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xef\x02\xa3\x03\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\xd2\x02\x88\x00\x00\x00\x89\x00\x43\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x79\x00\xc6\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x67\x03\x7d\x00\x25\x03\x44\x01\x00\x00\x68\x03\x00\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x83\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x80\x03\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x01\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x81\x03\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\xb3\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x79\x00\x40\x01\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x7d\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x0b\x03\x0c\x03\x7a\x00\x00\x00\x00\x00\x93\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x00\x00\x65\x00\x3c\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x3d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\xd2\x02\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x16\x03\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x79\x00\xc6\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x6a\x03\x7d\x00\x25\x03\x44\x01\x00\x00\x6b\x03\x00\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x65\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x0a\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x1c\x03\x00\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1d\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x7d\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x93\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x24\x02\x00\x00\x89\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x30\x02\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x7d\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x7c\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x00\x00\x65\x00\x3c\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x3d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3e\x01\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xdd\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x27\x02\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xa3\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x7f\x00\x80\x00\x81\x00\x82\x00\x83\x00\x84\x00\x85\x00\x86\x00\x1b\x00\x00\x00\x88\x00\x00\x00\x89\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x8a\x00\x8b\x00\x8c\x00\x00\x00\x00\x00\x8d\x00\x8e\x00\x00\x00\x8f\x00\x00\x00\x00\x00\x90\x00\x91\x00\x92\x00\x00\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x93\x00\x1a\x03\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x94\x00\x95\x00\x96\x00\x97\x00\x98\x00\x99\x00\x9a\x00\x9b\x00\x9c\x00\x9d\x00\x9e\x00\x9f\x00\xa0\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x39\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x3a\x04\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa1\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa3\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x00\x00\x00\x00\x42\x00\x43\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x82\x04\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x45\x00\x00\x00\x00\x00\x97\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x00\x00\x00\x00\x42\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\x22\x00\x23\x00\x24\x00\x25\x00\x26\x00\x27\x00\x28\x00\x29\x00\x2a\x00\x2b\x00\x2c\x00\x2d\x00\x2e\x00\x2f\x00\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\x3a\x00\x3b\x00\x3c\x00\x3d\x00\x3e\x00\x3f\x00\x40\x00\x41\x00\x00\x00\x00\x00\x42\x00\x43\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x8a\x04\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x62\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x44\x00\x45\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x46\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x61\x00\x62\x00\x63\x00\xb8\x03\x00\x00\x00\x00\xb9\x03\xba\x03\x00\x00\x00\x00\x00\x00\xbb\x03\x00\x00\x00\x00\xbc\x03\xbd\x03\x00\x00\x00\x00\x00\x00\xbe\x03\xbf\x03\xc0\x03\x00\x00\xc1\x03\xc2\x03\x00\x00\xc3\x03\x00\x00\x00\x00\xc4\x03\x00\x00\xc5\x03\xc6\x03\xc7\x03\x1b\x00\x81\x01\x82\x01\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x71\x01\x89\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x83\x01\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x84\x01\x00\x00\x00\x00\x7b\x00\x1b\x00\x81\x01\x82\x01\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x89\x01\x00\x00\x00\x00\x00\x00\xc8\x03\x00\x00\x00\x00\x83\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x01\x00\x00\xc9\x03\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x9b\x01\x9c\x01\x00\x00\x9d\x01\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x83\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x85\x01\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x85\x01\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x43\x00\x1b\x00\x81\x01\x82\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x83\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x84\x01\x00\x00\x00\x00\x00\x00\x1b\x00\x9b\x01\x9c\x01\x00\x00\x9d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9e\x01\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x43\x00\x69\x00\x99\x04\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x62\x02\x00\x00\x00\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x01\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x85\x01\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x9e\x01\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x43\x00\x1b\x00\x9b\x01\x9c\x01\x00\x00\x9d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x40\x01\x00\x00\x00\x00\xe7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x81\x01\x82\x01\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9e\x01\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xe7\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x43\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x1b\x00\x00\x00\x28\x03\x00\x00\x9d\x01\x85\x01\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x1b\x00\x20\x00\x00\x00\x76\x03\x00\x00\x25\x03\x44\x01\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x43\x00\x1b\x00\x20\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x43\x00\x1b\x00\x00\x00\x00\x00\x60\x04\x00\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x1b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x71\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x47\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x43\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\x5b\x00\x5c\x00\x5d\x00\x5e\x00\x5f\x00\x60\x00\xcc\x00\x00\x00\x00\x00\xcd\x00\xce\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\xd1\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\xd5\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\xd8\x00\xd9\x00\x00\x00\xda\x00\xdb\x00\xdc\x00\xdd\x00\xde\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x57\x01\x00\x00\x08\x01\x00\x00\x58\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\x59\x01\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\xe2\x00\xe3\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\xe7\x00\x00\x00\xcc\x00\xe8\x00\x00\x00\xea\x00\xce\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x00\xd1\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd5\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd8\x00\x00\x00\x00\x00\xda\x00\x00\x00\x00\x00\x00\x00\xde\x00\xec\x00\xed\x00\xee\x00\xe6\x01\x5b\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\xe2\x00\xe3\x00\x5c\x01\x5d\x01\x00\x00\x00\x00\xe7\x00\x00\x00\x00\x00\x00\x00\x00\x00\xea\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x5e\x01\x5f\x01\x60\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x61\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x00\xed\x00\xee\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xef\x00\xf0\x00\xf1\x00\xf2\x00\xf3\x00\xf4\x00\xf5\x00\xf6\x00\xf7\x00\xf8\x00\xf9\x00\xfa\x00\xfb\x00\xfc\x00\xfd\x00\xfe\x00\xff\x00\x00\x01\x01\x01\x02\x01\x03\x01\x57\x01\x00\x00\x08\x01\x00\x00\x58\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\x59\x01\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\xc5\x00\xbf\x00\xc0\x00\xc6\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\x01\x8b\x02\x00\x00\x24\x03\x00\x00\x25\x03\x44\x01\x00\x00\x00\x00\x00\x00\x26\x03\x99\x01\xc7\x00\x00\x00\x00\x00\x00\x00\x05\x01\x00\x00\x65\x00\x5a\x01\x5b\x01\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\xc9\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\xc9\x00\x07\x01\x00\x00\x08\x01\x00\x00\x09\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x5c\x01\x5d\x01\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x5e\x01\x5f\x01\x60\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x61\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x01\x0b\x01\x00\x00\x00\x00\x0c\x01\x0d\x01\xe7\x02\x0f\x01\x10\x01\x00\x00\x00\x00\xe8\x02\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x07\x01\x00\x00\x08\x01\x00\x00\x09\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x64\x00\xc5\x00\x65\x00\x00\x00\xc6\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\xb3\x00\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0a\x01\x0b\x01\x00\x00\x00\x00\x0c\x01\x0d\x01\x0e\x01\x0f\x01\x10\x01\x00\x00\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x07\x01\x00\x00\x08\x01\x00\x00\x09\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x79\x00\x3e\x04\x00\x00\x7a\x00\x64\x00\xc5\x00\x65\x00\x7b\x00\xc6\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x44\x04\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x30\x01\x31\x01\x00\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\x32\x01\x33\x01\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x8c\x01\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x07\x01\x00\x00\x08\x01\x00\x00\x09\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\xc5\x00\x65\x00\x7b\x00\xc6\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x83\x03\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdd\x01\xde\x01\x00\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\xdf\x01\x00\x00\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x8c\x01\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xef\x02\xf0\x02\x00\x00\xf1\x02\x00\x00\x08\x01\x00\x00\x09\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\xc5\x00\x65\x00\x7b\x00\xc6\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\xdb\x02\x00\x00\x00\x00\x00\x00\x05\x01\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\xc7\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\x00\x00\x32\x02\x00\x00\x00\x00\x00\x00\xc5\x00\xc9\x00\x00\x00\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\xdc\x02\x7a\x00\x00\x00\x52\x01\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x34\x01\x35\x01\x36\x01\x37\x01\x0c\x01\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x15\x01\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x31\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\x00\x00\x32\x02\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\xde\x02\x00\x00\x00\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x9d\x02\x00\x00\x00\x00\x52\x01\x00\x00\x00\x00\x00\x00\xdf\x02\xf1\x01\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x34\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x16\x01\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\x00\x00\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x31\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\x00\x00\x32\x02\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x9e\x02\x00\x00\x00\x00\x52\x01\x05\x01\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x34\x02\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x64\x00\x00\x00\x65\x00\x00\x00\x7d\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x31\x02\x00\x00\xaf\x01\xb0\x01\x00\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x4d\x01\xc3\x00\xc4\x00\x00\x00\x00\x00\x32\x02\x00\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x15\x01\x50\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x51\x01\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x16\x01\x33\x02\x7b\x00\x00\x00\x52\x01\x05\x01\x00\x00\x65\x00\x00\x00\x7d\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x34\x02\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x05\x01\x7b\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x7d\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\xc8\x04\x00\x00\xbf\x00\xc0\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x9a\x02\x43\x01\x44\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc7\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x16\x01\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\xc3\x04\x00\x00\x00\x00\x7d\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x01\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\xd2\x02\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\xc4\x04\x00\x00\xbf\x00\xc0\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x73\x03\x00\x00\x25\x03\x44\x01\x00\x00\x74\x03\x00\x00\xa6\x04\x00\x00\xc7\x00\x79\x00\x0c\x01\x0d\x01\x7a\x00\x00\x00\x16\x01\x00\x00\x7b\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x01\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\xa8\x04\xbf\x00\xc0\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x42\x01\x43\x01\x44\x01\x00\x00\x00\x00\x00\x00\x00\x00\x2d\x04\xc7\x00\x00\x00\x79\x00\x0c\x01\x0d\x01\x7a\x00\x00\x00\x16\x01\x00\x00\x7b\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x01\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x00\x00\xbd\x00\x00\x00\xbe\x00\x00\x00\x2e\x04\xbf\x00\xc0\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x47\x01\x00\x00\x00\x00\x00\x00\x00\x00\x2f\x04\xc7\x00\x00\x00\x79\x00\x0c\x01\x0d\x01\x7a\x00\x00\x00\x16\x01\x00\x00\x7b\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x01\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xa6\x03\x00\x00\x00\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xec\x02\x00\x00\x00\x00\x79\x00\x0c\x01\x0d\x01\x7a\x00\x00\x00\x16\x01\x00\x00\x7b\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x01\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xac\x01\x00\x00\x00\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xae\x01\x00\x00\x00\x00\x79\x00\x0c\x01\x0d\x01\x7a\x00\x00\x00\x16\x01\x00\x00\x7b\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x01\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xac\x01\x00\x00\x00\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xae\x01\x00\x00\x00\x00\x79\x00\x0c\x01\x0d\x01\x7a\x00\x00\x00\x16\x01\x00\x00\x7b\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x05\x01\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x05\x01\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x06\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xd2\x01\x00\x00\x00\x00\x00\x00\x0c\x01\x0d\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x39\x01\x00\x00\x00\x00\x79\x00\x0c\x01\x0d\x01\x7a\x00\x00\x00\x16\x01\x00\x00\x7b\x00\x00\x00\x11\x01\x12\x01\x13\x01\x14\x01\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x15\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\x16\x01\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x2a\x04\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x97\x03\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x67\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x69\x02\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x62\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xb7\x02\x00\x00\xb8\x02\x00\x00\xb9\x02\x00\x00\xba\x02\x00\x00\xbb\x02\x00\x00\x00\x00\x00\x00\xbc\x02\xbd\x02\x00\x00\x00\x00\xbe\x02\xbf\x02\xc3\x00\xc4\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\xc5\x00\x7b\x00\x00\x00\xc0\x02\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\xc1\x02\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\xc2\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\xc3\x02\xe1\x02\xe2\x02\x7b\x00\xe3\x02\xf1\x01\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\x00\x00\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x89\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xf5\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xf8\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xf9\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\x00\x00\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xfd\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x07\x03\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x08\x03\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x0a\x03\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\xca\x01\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\xb3\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\xb4\x00\x00\x00\x7a\x00\x64\x00\x00\x00\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x66\x01\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x96\x04\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x05\x04\x64\x00\xcb\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x3c\x04\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x41\x04\x00\x00\xcd\x00\x79\x00\x00\x00\x00\x00\x7a\x00\xcf\x00\x00\x00\xd0\x00\x7b\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x7d\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\x79\x00\x00\x00\x00\x00\x7a\x00\xdf\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x75\x01\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x79\x00\xe8\x00\xe9\x00\x7a\x00\xeb\x00\x76\x01\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\x00\x00\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x60\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x6c\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x6d\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x6e\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x6f\x02\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\x00\x00\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x70\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x71\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x72\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x73\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x74\x02\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\x00\x00\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x75\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x76\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x9f\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\xaf\x02\x64\x00\x00\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\xd8\x01\x00\x00\x00\x00\x00\x00\x39\x03\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x64\x00\x00\x00\x65\x00\x7b\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x7d\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x55\x03\x64\x00\xcb\x00\x65\x00\x00\x00\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\xd7\x01\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\xd8\x01\x64\x00\x00\x00\x65\x00\xd9\x01\x00\x00\x66\x00\x67\x00\x68\x00\x00\x00\x69\x00\x00\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x5e\x02\x00\x00\x00\x00\xcd\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x00\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x00\x00\xd6\x00\xd7\x00\x00\x00\x00\x00\xd9\x00\x00\x00\x00\x00\xdb\x00\xdc\x00\xdd\x00\x00\x00\x00\x00\x00\x00\x00\x00\xdf\x00\x00\x00\x00\x00\x00\x00\xcb\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x79\x00\x00\x00\x00\x00\x7a\x00\x00\x00\x00\x00\x00\x00\x7b\x00\x00\x00\x00\x00\xe0\x03\x00\x00\x00\x00\x00\x00\x7d\x00\x00\x00\x00\x00\x00\x00\x00\x00\xe4\x00\xe5\x00\xe6\x00\x00\x00\x00\x00\x00\x00\x79\x00\xe8\x00\xe9\x00\x7a\x00\xeb\x00\x00\x00\x00\x00\x7b\x00\xcd\x00\x00\x00\x00\x00\x00\x00\x00\x00\xcf\x00\x7d\x00\xd0\x00\x00\x00\xd2\x00\x00\x00\x00\x00\x00\x00\xd3\x00\xd4\x00\x00\x00\x79\x00\xd6\x00\xd7\x00\x7a\x00\x00\x00\xd9\x00\x00\x00\x7b\x00\xdb\x00\xdc\x00\xdd\x00\x00\x00\x00\x00\x76\x01\x7d\x00\xdf\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x41\x01\x75\x01\xbd\x00\x00\x00\xbe\x00\x00\x00\x00\x00\xbf\x00\xc0\x00\x00\x00\xe4\x00\xe5\x00\xe6\x00\xc1\x00\xc2\x00\xc3\x00\xc4\x00\xe8\x00\xe9\x00\x00\x00\xeb\x00\x00\x00\x00\x00\xc5\x00\x00\x00\x00\x00\xc6\x00\x22\x03\x7a\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x96\x01\x23\x03\x00\x00\x24\x03\x00\x00\x25\x03\x44\x01\x00\x00\x00\x00\x00\x00\x26\x03\x99\x01\xc7\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xc9\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#--happyReduceArr = Happy_Data_Array.array (25, 815) [- (25 , happyReduce_25),- (26 , happyReduce_26),- (27 , happyReduce_27),- (28 , happyReduce_28),- (29 , happyReduce_29),- (30 , happyReduce_30),- (31 , happyReduce_31),- (32 , happyReduce_32),- (33 , happyReduce_33),- (34 , happyReduce_34),- (35 , happyReduce_35),- (36 , happyReduce_36),- (37 , happyReduce_37),- (38 , happyReduce_38),- (39 , happyReduce_39),- (40 , happyReduce_40),- (41 , happyReduce_41),- (42 , happyReduce_42),- (43 , happyReduce_43),- (44 , happyReduce_44),- (45 , happyReduce_45),- (46 , happyReduce_46),- (47 , happyReduce_47),- (48 , happyReduce_48),- (49 , happyReduce_49),- (50 , happyReduce_50),- (51 , happyReduce_51),- (52 , happyReduce_52),- (53 , happyReduce_53),- (54 , happyReduce_54),- (55 , happyReduce_55),- (56 , happyReduce_56),- (57 , happyReduce_57),- (58 , happyReduce_58),- (59 , happyReduce_59),- (60 , happyReduce_60),- (61 , happyReduce_61),- (62 , happyReduce_62),- (63 , happyReduce_63),- (64 , happyReduce_64),- (65 , happyReduce_65),- (66 , happyReduce_66),- (67 , happyReduce_67),- (68 , happyReduce_68),- (69 , happyReduce_69),- (70 , happyReduce_70),- (71 , happyReduce_71),- (72 , happyReduce_72),- (73 , happyReduce_73),- (74 , happyReduce_74),- (75 , happyReduce_75),- (76 , happyReduce_76),- (77 , happyReduce_77),- (78 , happyReduce_78),- (79 , happyReduce_79),- (80 , happyReduce_80),- (81 , happyReduce_81),- (82 , happyReduce_82),- (83 , happyReduce_83),- (84 , happyReduce_84),- (85 , happyReduce_85),- (86 , happyReduce_86),- (87 , happyReduce_87),- (88 , happyReduce_88),- (89 , happyReduce_89),- (90 , happyReduce_90),- (91 , happyReduce_91),- (92 , happyReduce_92),- (93 , happyReduce_93),- (94 , happyReduce_94),- (95 , happyReduce_95),- (96 , happyReduce_96),- (97 , happyReduce_97),- (98 , happyReduce_98),- (99 , happyReduce_99),- (100 , happyReduce_100),- (101 , happyReduce_101),- (102 , happyReduce_102),- (103 , happyReduce_103),- (104 , happyReduce_104),- (105 , happyReduce_105),- (106 , happyReduce_106),- (107 , happyReduce_107),- (108 , happyReduce_108),- (109 , happyReduce_109),- (110 , happyReduce_110),- (111 , happyReduce_111),- (112 , happyReduce_112),- (113 , happyReduce_113),- (114 , happyReduce_114),- (115 , happyReduce_115),- (116 , happyReduce_116),- (117 , happyReduce_117),- (118 , happyReduce_118),- (119 , happyReduce_119),- (120 , happyReduce_120),- (121 , happyReduce_121),- (122 , happyReduce_122),- (123 , happyReduce_123),- (124 , happyReduce_124),- (125 , happyReduce_125),- (126 , happyReduce_126),- (127 , happyReduce_127),- (128 , happyReduce_128),- (129 , happyReduce_129),- (130 , happyReduce_130),- (131 , happyReduce_131),- (132 , happyReduce_132),- (133 , happyReduce_133),- (134 , happyReduce_134),- (135 , happyReduce_135),- (136 , happyReduce_136),- (137 , happyReduce_137),- (138 , happyReduce_138),- (139 , happyReduce_139),- (140 , happyReduce_140),- (141 , happyReduce_141),- (142 , happyReduce_142),- (143 , happyReduce_143),- (144 , happyReduce_144),- (145 , happyReduce_145),- (146 , happyReduce_146),- (147 , happyReduce_147),- (148 , happyReduce_148),- (149 , happyReduce_149),- (150 , happyReduce_150),- (151 , happyReduce_151),- (152 , happyReduce_152),- (153 , happyReduce_153),- (154 , happyReduce_154),- (155 , happyReduce_155),- (156 , happyReduce_156),- (157 , happyReduce_157),- (158 , happyReduce_158),- (159 , happyReduce_159),- (160 , happyReduce_160),- (161 , happyReduce_161),- (162 , happyReduce_162),- (163 , happyReduce_163),- (164 , happyReduce_164),- (165 , happyReduce_165),- (166 , happyReduce_166),- (167 , happyReduce_167),- (168 , happyReduce_168),- (169 , happyReduce_169),- (170 , happyReduce_170),- (171 , happyReduce_171),- (172 , happyReduce_172),- (173 , happyReduce_173),- (174 , happyReduce_174),- (175 , happyReduce_175),- (176 , happyReduce_176),- (177 , happyReduce_177),- (178 , happyReduce_178),- (179 , happyReduce_179),- (180 , happyReduce_180),- (181 , happyReduce_181),- (182 , happyReduce_182),- (183 , happyReduce_183),- (184 , happyReduce_184),- (185 , happyReduce_185),- (186 , happyReduce_186),- (187 , happyReduce_187),- (188 , happyReduce_188),- (189 , happyReduce_189),- (190 , happyReduce_190),- (191 , happyReduce_191),- (192 , happyReduce_192),- (193 , happyReduce_193),- (194 , happyReduce_194),- (195 , happyReduce_195),- (196 , happyReduce_196),- (197 , happyReduce_197),- (198 , happyReduce_198),- (199 , happyReduce_199),- (200 , happyReduce_200),- (201 , happyReduce_201),- (202 , happyReduce_202),- (203 , happyReduce_203),- (204 , happyReduce_204),- (205 , happyReduce_205),- (206 , happyReduce_206),- (207 , happyReduce_207),- (208 , happyReduce_208),- (209 , happyReduce_209),- (210 , happyReduce_210),- (211 , happyReduce_211),- (212 , happyReduce_212),- (213 , happyReduce_213),- (214 , happyReduce_214),- (215 , happyReduce_215),- (216 , happyReduce_216),- (217 , happyReduce_217),- (218 , happyReduce_218),- (219 , happyReduce_219),- (220 , happyReduce_220),- (221 , happyReduce_221),- (222 , happyReduce_222),- (223 , happyReduce_223),- (224 , happyReduce_224),- (225 , happyReduce_225),- (226 , happyReduce_226),- (227 , happyReduce_227),- (228 , happyReduce_228),- (229 , happyReduce_229),- (230 , happyReduce_230),- (231 , happyReduce_231),- (232 , happyReduce_232),- (233 , happyReduce_233),- (234 , happyReduce_234),- (235 , happyReduce_235),- (236 , happyReduce_236),- (237 , happyReduce_237),- (238 , happyReduce_238),- (239 , happyReduce_239),- (240 , happyReduce_240),- (241 , happyReduce_241),- (242 , happyReduce_242),- (243 , happyReduce_243),- (244 , happyReduce_244),- (245 , happyReduce_245),- (246 , happyReduce_246),- (247 , happyReduce_247),- (248 , happyReduce_248),- (249 , happyReduce_249),- (250 , happyReduce_250),- (251 , happyReduce_251),- (252 , happyReduce_252),- (253 , happyReduce_253),- (254 , happyReduce_254),- (255 , happyReduce_255),- (256 , happyReduce_256),- (257 , happyReduce_257),- (258 , happyReduce_258),- (259 , happyReduce_259),- (260 , happyReduce_260),- (261 , happyReduce_261),- (262 , happyReduce_262),- (263 , happyReduce_263),- (264 , happyReduce_264),- (265 , happyReduce_265),- (266 , happyReduce_266),- (267 , happyReduce_267),- (268 , happyReduce_268),- (269 , happyReduce_269),- (270 , happyReduce_270),- (271 , happyReduce_271),- (272 , happyReduce_272),- (273 , happyReduce_273),- (274 , happyReduce_274),- (275 , happyReduce_275),- (276 , happyReduce_276),- (277 , happyReduce_277),- (278 , happyReduce_278),- (279 , happyReduce_279),- (280 , happyReduce_280),- (281 , happyReduce_281),- (282 , happyReduce_282),- (283 , happyReduce_283),- (284 , happyReduce_284),- (285 , happyReduce_285),- (286 , happyReduce_286),- (287 , happyReduce_287),- (288 , happyReduce_288),- (289 , happyReduce_289),- (290 , happyReduce_290),- (291 , happyReduce_291),- (292 , happyReduce_292),- (293 , happyReduce_293),- (294 , happyReduce_294),- (295 , happyReduce_295),- (296 , happyReduce_296),- (297 , happyReduce_297),- (298 , happyReduce_298),- (299 , happyReduce_299),- (300 , happyReduce_300),- (301 , happyReduce_301),- (302 , happyReduce_302),- (303 , happyReduce_303),- (304 , happyReduce_304),- (305 , happyReduce_305),- (306 , happyReduce_306),- (307 , happyReduce_307),- (308 , happyReduce_308),- (309 , happyReduce_309),- (310 , happyReduce_310),- (311 , happyReduce_311),- (312 , happyReduce_312),- (313 , happyReduce_313),- (314 , happyReduce_314),- (315 , happyReduce_315),- (316 , happyReduce_316),- (317 , happyReduce_317),- (318 , happyReduce_318),- (319 , happyReduce_319),- (320 , happyReduce_320),- (321 , happyReduce_321),- (322 , happyReduce_322),- (323 , happyReduce_323),- (324 , happyReduce_324),- (325 , happyReduce_325),- (326 , happyReduce_326),- (327 , happyReduce_327),- (328 , happyReduce_328),- (329 , happyReduce_329),- (330 , happyReduce_330),- (331 , happyReduce_331),- (332 , happyReduce_332),- (333 , happyReduce_333),- (334 , happyReduce_334),- (335 , happyReduce_335),- (336 , happyReduce_336),- (337 , happyReduce_337),- (338 , happyReduce_338),- (339 , happyReduce_339),- (340 , happyReduce_340),- (341 , happyReduce_341),- (342 , happyReduce_342),- (343 , happyReduce_343),- (344 , happyReduce_344),- (345 , happyReduce_345),- (346 , happyReduce_346),- (347 , happyReduce_347),- (348 , happyReduce_348),- (349 , happyReduce_349),- (350 , happyReduce_350),- (351 , happyReduce_351),- (352 , happyReduce_352),- (353 , happyReduce_353),- (354 , happyReduce_354),- (355 , happyReduce_355),- (356 , happyReduce_356),- (357 , happyReduce_357),- (358 , happyReduce_358),- (359 , happyReduce_359),- (360 , happyReduce_360),- (361 , happyReduce_361),- (362 , happyReduce_362),- (363 , happyReduce_363),- (364 , happyReduce_364),- (365 , happyReduce_365),- (366 , happyReduce_366),- (367 , happyReduce_367),- (368 , happyReduce_368),- (369 , happyReduce_369),- (370 , happyReduce_370),- (371 , happyReduce_371),- (372 , happyReduce_372),- (373 , happyReduce_373),- (374 , happyReduce_374),- (375 , happyReduce_375),- (376 , happyReduce_376),- (377 , happyReduce_377),- (378 , happyReduce_378),- (379 , happyReduce_379),- (380 , happyReduce_380),- (381 , happyReduce_381),- (382 , happyReduce_382),- (383 , happyReduce_383),- (384 , happyReduce_384),- (385 , happyReduce_385),- (386 , happyReduce_386),- (387 , happyReduce_387),- (388 , happyReduce_388),- (389 , happyReduce_389),- (390 , happyReduce_390),- (391 , happyReduce_391),- (392 , happyReduce_392),- (393 , happyReduce_393),- (394 , happyReduce_394),- (395 , happyReduce_395),- (396 , happyReduce_396),- (397 , happyReduce_397),- (398 , happyReduce_398),- (399 , happyReduce_399),- (400 , happyReduce_400),- (401 , happyReduce_401),- (402 , happyReduce_402),- (403 , happyReduce_403),- (404 , happyReduce_404),- (405 , happyReduce_405),- (406 , happyReduce_406),- (407 , happyReduce_407),- (408 , happyReduce_408),- (409 , happyReduce_409),- (410 , happyReduce_410),- (411 , happyReduce_411),- (412 , happyReduce_412),- (413 , happyReduce_413),- (414 , happyReduce_414),- (415 , happyReduce_415),- (416 , happyReduce_416),- (417 , happyReduce_417),- (418 , happyReduce_418),- (419 , happyReduce_419),- (420 , happyReduce_420),- (421 , happyReduce_421),- (422 , happyReduce_422),- (423 , happyReduce_423),- (424 , happyReduce_424),- (425 , happyReduce_425),- (426 , happyReduce_426),- (427 , happyReduce_427),- (428 , happyReduce_428),- (429 , happyReduce_429),- (430 , happyReduce_430),- (431 , happyReduce_431),- (432 , happyReduce_432),- (433 , happyReduce_433),- (434 , happyReduce_434),- (435 , happyReduce_435),- (436 , happyReduce_436),- (437 , happyReduce_437),- (438 , happyReduce_438),- (439 , happyReduce_439),- (440 , happyReduce_440),- (441 , happyReduce_441),- (442 , happyReduce_442),- (443 , happyReduce_443),- (444 , happyReduce_444),- (445 , happyReduce_445),- (446 , happyReduce_446),- (447 , happyReduce_447),- (448 , happyReduce_448),- (449 , happyReduce_449),- (450 , happyReduce_450),- (451 , happyReduce_451),- (452 , happyReduce_452),- (453 , happyReduce_453),- (454 , happyReduce_454),- (455 , happyReduce_455),- (456 , happyReduce_456),- (457 , happyReduce_457),- (458 , happyReduce_458),- (459 , happyReduce_459),- (460 , happyReduce_460),- (461 , happyReduce_461),- (462 , happyReduce_462),- (463 , happyReduce_463),- (464 , happyReduce_464),- (465 , happyReduce_465),- (466 , happyReduce_466),- (467 , happyReduce_467),- (468 , happyReduce_468),- (469 , happyReduce_469),- (470 , happyReduce_470),- (471 , happyReduce_471),- (472 , happyReduce_472),- (473 , happyReduce_473),- (474 , happyReduce_474),- (475 , happyReduce_475),- (476 , happyReduce_476),- (477 , happyReduce_477),- (478 , happyReduce_478),- (479 , happyReduce_479),- (480 , happyReduce_480),- (481 , happyReduce_481),- (482 , happyReduce_482),- (483 , happyReduce_483),- (484 , happyReduce_484),- (485 , happyReduce_485),- (486 , happyReduce_486),- (487 , happyReduce_487),- (488 , happyReduce_488),- (489 , happyReduce_489),- (490 , happyReduce_490),- (491 , happyReduce_491),- (492 , happyReduce_492),- (493 , happyReduce_493),- (494 , happyReduce_494),- (495 , happyReduce_495),- (496 , happyReduce_496),- (497 , happyReduce_497),- (498 , happyReduce_498),- (499 , happyReduce_499),- (500 , happyReduce_500),- (501 , happyReduce_501),- (502 , happyReduce_502),- (503 , happyReduce_503),- (504 , happyReduce_504),- (505 , happyReduce_505),- (506 , happyReduce_506),- (507 , happyReduce_507),- (508 , happyReduce_508),- (509 , happyReduce_509),- (510 , happyReduce_510),- (511 , happyReduce_511),- (512 , happyReduce_512),- (513 , happyReduce_513),- (514 , happyReduce_514),- (515 , happyReduce_515),- (516 , happyReduce_516),- (517 , happyReduce_517),- (518 , happyReduce_518),- (519 , happyReduce_519),- (520 , happyReduce_520),- (521 , happyReduce_521),- (522 , happyReduce_522),- (523 , happyReduce_523),- (524 , happyReduce_524),- (525 , happyReduce_525),- (526 , happyReduce_526),- (527 , happyReduce_527),- (528 , happyReduce_528),- (529 , happyReduce_529),- (530 , happyReduce_530),- (531 , happyReduce_531),- (532 , happyReduce_532),- (533 , happyReduce_533),- (534 , happyReduce_534),- (535 , happyReduce_535),- (536 , happyReduce_536),- (537 , happyReduce_537),- (538 , happyReduce_538),- (539 , happyReduce_539),- (540 , happyReduce_540),- (541 , happyReduce_541),- (542 , happyReduce_542),- (543 , happyReduce_543),- (544 , happyReduce_544),- (545 , happyReduce_545),- (546 , happyReduce_546),- (547 , happyReduce_547),- (548 , happyReduce_548),- (549 , happyReduce_549),- (550 , happyReduce_550),- (551 , happyReduce_551),- (552 , happyReduce_552),- (553 , happyReduce_553),- (554 , happyReduce_554),- (555 , happyReduce_555),- (556 , happyReduce_556),- (557 , happyReduce_557),- (558 , happyReduce_558),- (559 , happyReduce_559),- (560 , happyReduce_560),- (561 , happyReduce_561),- (562 , happyReduce_562),- (563 , happyReduce_563),- (564 , happyReduce_564),- (565 , happyReduce_565),- (566 , happyReduce_566),- (567 , happyReduce_567),- (568 , happyReduce_568),- (569 , happyReduce_569),- (570 , happyReduce_570),- (571 , happyReduce_571),- (572 , happyReduce_572),- (573 , happyReduce_573),- (574 , happyReduce_574),- (575 , happyReduce_575),- (576 , happyReduce_576),- (577 , happyReduce_577),- (578 , happyReduce_578),- (579 , happyReduce_579),- (580 , happyReduce_580),- (581 , happyReduce_581),- (582 , happyReduce_582),- (583 , happyReduce_583),- (584 , happyReduce_584),- (585 , happyReduce_585),- (586 , happyReduce_586),- (587 , happyReduce_587),- (588 , happyReduce_588),- (589 , happyReduce_589),- (590 , happyReduce_590),- (591 , happyReduce_591),- (592 , happyReduce_592),- (593 , happyReduce_593),- (594 , happyReduce_594),- (595 , happyReduce_595),- (596 , happyReduce_596),- (597 , happyReduce_597),- (598 , happyReduce_598),- (599 , happyReduce_599),- (600 , happyReduce_600),- (601 , happyReduce_601),- (602 , happyReduce_602),- (603 , happyReduce_603),- (604 , happyReduce_604),- (605 , happyReduce_605),- (606 , happyReduce_606),- (607 , happyReduce_607),- (608 , happyReduce_608),- (609 , happyReduce_609),- (610 , happyReduce_610),- (611 , happyReduce_611),- (612 , happyReduce_612),- (613 , happyReduce_613),- (614 , happyReduce_614),- (615 , happyReduce_615),- (616 , happyReduce_616),- (617 , happyReduce_617),- (618 , happyReduce_618),- (619 , happyReduce_619),- (620 , happyReduce_620),- (621 , happyReduce_621),- (622 , happyReduce_622),- (623 , happyReduce_623),- (624 , happyReduce_624),- (625 , happyReduce_625),- (626 , happyReduce_626),- (627 , happyReduce_627),- (628 , happyReduce_628),- (629 , happyReduce_629),- (630 , happyReduce_630),- (631 , happyReduce_631),- (632 , happyReduce_632),- (633 , happyReduce_633),- (634 , happyReduce_634),- (635 , happyReduce_635),- (636 , happyReduce_636),- (637 , happyReduce_637),- (638 , happyReduce_638),- (639 , happyReduce_639),- (640 , happyReduce_640),- (641 , happyReduce_641),- (642 , happyReduce_642),- (643 , happyReduce_643),- (644 , happyReduce_644),- (645 , happyReduce_645),- (646 , happyReduce_646),- (647 , happyReduce_647),- (648 , happyReduce_648),- (649 , happyReduce_649),- (650 , happyReduce_650),- (651 , happyReduce_651),- (652 , happyReduce_652),- (653 , happyReduce_653),- (654 , happyReduce_654),- (655 , happyReduce_655),- (656 , happyReduce_656),- (657 , happyReduce_657),- (658 , happyReduce_658),- (659 , happyReduce_659),- (660 , happyReduce_660),- (661 , happyReduce_661),- (662 , happyReduce_662),- (663 , happyReduce_663),- (664 , happyReduce_664),- (665 , happyReduce_665),- (666 , happyReduce_666),- (667 , happyReduce_667),- (668 , happyReduce_668),- (669 , happyReduce_669),- (670 , happyReduce_670),- (671 , happyReduce_671),- (672 , happyReduce_672),- (673 , happyReduce_673),- (674 , happyReduce_674),- (675 , happyReduce_675),- (676 , happyReduce_676),- (677 , happyReduce_677),- (678 , happyReduce_678),- (679 , happyReduce_679),- (680 , happyReduce_680),- (681 , happyReduce_681),- (682 , happyReduce_682),- (683 , happyReduce_683),- (684 , happyReduce_684),- (685 , happyReduce_685),- (686 , happyReduce_686),- (687 , happyReduce_687),- (688 , happyReduce_688),- (689 , happyReduce_689),- (690 , happyReduce_690),- (691 , happyReduce_691),- (692 , happyReduce_692),- (693 , happyReduce_693),- (694 , happyReduce_694),- (695 , happyReduce_695),- (696 , happyReduce_696),- (697 , happyReduce_697),- (698 , happyReduce_698),- (699 , happyReduce_699),- (700 , happyReduce_700),- (701 , happyReduce_701),- (702 , happyReduce_702),- (703 , happyReduce_703),- (704 , happyReduce_704),- (705 , happyReduce_705),- (706 , happyReduce_706),- (707 , happyReduce_707),- (708 , happyReduce_708),- (709 , happyReduce_709),- (710 , happyReduce_710),- (711 , happyReduce_711),- (712 , happyReduce_712),- (713 , happyReduce_713),- (714 , happyReduce_714),- (715 , happyReduce_715),- (716 , happyReduce_716),- (717 , happyReduce_717),- (718 , happyReduce_718),- (719 , happyReduce_719),- (720 , happyReduce_720),- (721 , happyReduce_721),- (722 , happyReduce_722),- (723 , happyReduce_723),- (724 , happyReduce_724),- (725 , happyReduce_725),- (726 , happyReduce_726),- (727 , happyReduce_727),- (728 , happyReduce_728),- (729 , happyReduce_729),- (730 , happyReduce_730),- (731 , happyReduce_731),- (732 , happyReduce_732),- (733 , happyReduce_733),- (734 , happyReduce_734),- (735 , happyReduce_735),- (736 , happyReduce_736),- (737 , happyReduce_737),- (738 , happyReduce_738),- (739 , happyReduce_739),- (740 , happyReduce_740),- (741 , happyReduce_741),- (742 , happyReduce_742),- (743 , happyReduce_743),- (744 , happyReduce_744),- (745 , happyReduce_745),- (746 , happyReduce_746),- (747 , happyReduce_747),- (748 , happyReduce_748),- (749 , happyReduce_749),- (750 , happyReduce_750),- (751 , happyReduce_751),- (752 , happyReduce_752),- (753 , happyReduce_753),- (754 , happyReduce_754),- (755 , happyReduce_755),- (756 , happyReduce_756),- (757 , happyReduce_757),- (758 , happyReduce_758),- (759 , happyReduce_759),- (760 , happyReduce_760),- (761 , happyReduce_761),- (762 , happyReduce_762),- (763 , happyReduce_763),- (764 , happyReduce_764),- (765 , happyReduce_765),- (766 , happyReduce_766),- (767 , happyReduce_767),- (768 , happyReduce_768),- (769 , happyReduce_769),- (770 , happyReduce_770),- (771 , happyReduce_771),- (772 , happyReduce_772),- (773 , happyReduce_773),- (774 , happyReduce_774),- (775 , happyReduce_775),- (776 , happyReduce_776),- (777 , happyReduce_777),- (778 , happyReduce_778),- (779 , happyReduce_779),- (780 , happyReduce_780),- (781 , happyReduce_781),- (782 , happyReduce_782),- (783 , happyReduce_783),- (784 , happyReduce_784),- (785 , happyReduce_785),- (786 , happyReduce_786),- (787 , happyReduce_787),- (788 , happyReduce_788),- (789 , happyReduce_789),- (790 , happyReduce_790),- (791 , happyReduce_791),- (792 , happyReduce_792),- (793 , happyReduce_793),- (794 , happyReduce_794),- (795 , happyReduce_795),- (796 , happyReduce_796),- (797 , happyReduce_797),- (798 , happyReduce_798),- (799 , happyReduce_799),- (800 , happyReduce_800),- (801 , happyReduce_801),- (802 , happyReduce_802),- (803 , happyReduce_803),- (804 , happyReduce_804),- (805 , happyReduce_805),- (806 , happyReduce_806),- (807 , happyReduce_807),- (808 , happyReduce_808),- (809 , happyReduce_809),- (810 , happyReduce_810),- (811 , happyReduce_811),- (812 , happyReduce_812),- (813 , happyReduce_813),- (814 , happyReduce_814),- (815 , happyReduce_815)- ]--happy_n_terms = 210 :: Int-happy_n_nonterms = 175 :: Int--happyReduce_25 = happySpecReduce_1 0# happyReduction_25-happyReduction_25 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id (getID happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_26 = happySpecReduce_1 0# happyReduction_26-happyReduction_26 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (AntiId (getANTI_ID happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_27 = happySpecReduce_1 0# happyReduction_27-happyReduction_27 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "autoreleasepool" (srclocOf happy_var_1)- )}--happyReduce_28 = happySpecReduce_1 0# happyReduction_28-happyReduction_28 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "catch" (srclocOf happy_var_1)- )}--happyReduce_29 = happySpecReduce_1 0# happyReduction_29-happyReduction_29 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "class" (srclocOf happy_var_1)- )}--happyReduce_30 = happySpecReduce_1 0# happyReduction_30-happyReduction_30 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "compatibility_alias" (srclocOf happy_var_1)- )}--happyReduce_31 = happySpecReduce_1 0# happyReduction_31-happyReduction_31 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "dynamic" (srclocOf happy_var_1)- )}--happyReduce_32 = happySpecReduce_1 0# happyReduction_32-happyReduction_32 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "encode" (srclocOf happy_var_1)- )}--happyReduce_33 = happySpecReduce_1 0# happyReduction_33-happyReduction_33 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "end" (srclocOf happy_var_1)- )}--happyReduce_34 = happySpecReduce_1 0# happyReduction_34-happyReduction_34 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "finally" (srclocOf happy_var_1)- )}--happyReduce_35 = happySpecReduce_1 0# happyReduction_35-happyReduction_35 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "implementation" (srclocOf happy_var_1)- )}--happyReduce_36 = happySpecReduce_1 0# happyReduction_36-happyReduction_36 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "interface" (srclocOf happy_var_1)- )}--happyReduce_37 = happySpecReduce_1 0# happyReduction_37-happyReduction_37 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "NO" (srclocOf happy_var_1)- )}--happyReduce_38 = happySpecReduce_1 0# happyReduction_38-happyReduction_38 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "private" (srclocOf happy_var_1)- )}--happyReduce_39 = happySpecReduce_1 0# happyReduction_39-happyReduction_39 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "optional" (srclocOf happy_var_1)- )}--happyReduce_40 = happySpecReduce_1 0# happyReduction_40-happyReduction_40 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "public" (srclocOf happy_var_1)- )}--happyReduce_41 = happySpecReduce_1 0# happyReduction_41-happyReduction_41 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "property" (srclocOf happy_var_1)- )}--happyReduce_42 = happySpecReduce_1 0# happyReduction_42-happyReduction_42 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "protected" (srclocOf happy_var_1)- )}--happyReduce_43 = happySpecReduce_1 0# happyReduction_43-happyReduction_43 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "package" (srclocOf happy_var_1)- )}--happyReduce_44 = happySpecReduce_1 0# happyReduction_44-happyReduction_44 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "protocol" (srclocOf happy_var_1)- )}--happyReduce_45 = happySpecReduce_1 0# happyReduction_45-happyReduction_45 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "required" (srclocOf happy_var_1)- )}--happyReduce_46 = happySpecReduce_1 0# happyReduction_46-happyReduction_46 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "selector" (srclocOf happy_var_1)- )}--happyReduce_47 = happySpecReduce_1 0# happyReduction_47-happyReduction_47 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "synchronized" (srclocOf happy_var_1)- )}--happyReduce_48 = happySpecReduce_1 0# happyReduction_48-happyReduction_48 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "synthesize" (srclocOf happy_var_1)- )}--happyReduce_49 = happySpecReduce_1 0# happyReduction_49-happyReduction_49 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "throw" (srclocOf happy_var_1)- )}--happyReduce_50 = happySpecReduce_1 0# happyReduction_50-happyReduction_50 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "try" (srclocOf happy_var_1)- )}--happyReduce_51 = happySpecReduce_1 0# happyReduction_51-happyReduction_51 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn28- (Id "YES" (srclocOf happy_var_1)- )}--happyReduce_52 = happySpecReduce_1 1# happyReduction_52-happyReduction_52 happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - happyIn29- (happy_var_1- )}--happyReduce_53 = happySpecReduce_1 1# happyReduction_53-happyReduction_53 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn29- (Id (getNAMED happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_54 = happySpecReduce_1 1# happyReduction_54-happyReduction_54 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn29- (Id (getOBJCNAMED happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_55 = happySpecReduce_1 2# happyReduction_55-happyReduction_55 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (let (s, sign, n) = getINT happy_var_1- in- IntConst s sign n (srclocOf happy_var_1)- )}--happyReduce_56 = happySpecReduce_1 2# happyReduction_56-happyReduction_56 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (let (s, sign, n) = getLONG happy_var_1- in- LongIntConst s sign n (srclocOf happy_var_1)- )}--happyReduce_57 = happySpecReduce_1 2# happyReduction_57-happyReduction_57 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (let (s, sign, n) = getLONG_LONG happy_var_1- in- LongLongIntConst s sign n (srclocOf happy_var_1)- )}--happyReduce_58 = happySpecReduce_1 2# happyReduction_58-happyReduction_58 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (let (s, n) = getFLOAT happy_var_1- in- FloatConst s n (srclocOf happy_var_1)- )}--happyReduce_59 = happySpecReduce_1 2# happyReduction_59-happyReduction_59 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (let (s, n) = getDOUBLE happy_var_1- in- DoubleConst s n (srclocOf happy_var_1)- )}--happyReduce_60 = happySpecReduce_1 2# happyReduction_60-happyReduction_60 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (let (s, n) = getLONG_DOUBLE happy_var_1- in- LongDoubleConst s n (srclocOf happy_var_1)- )}--happyReduce_61 = happySpecReduce_1 2# happyReduction_61-happyReduction_61 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (let (s, c) = getCHAR happy_var_1- in- CharConst s c (srclocOf happy_var_1)- )}--happyReduce_62 = happySpecReduce_1 2# happyReduction_62-happyReduction_62 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiConst (getANTI_CONST happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_63 = happySpecReduce_1 2# happyReduction_63-happyReduction_63 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiInt (getANTI_INT happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_64 = happySpecReduce_1 2# happyReduction_64-happyReduction_64 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiUInt (getANTI_UINT happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_65 = happySpecReduce_1 2# happyReduction_65-happyReduction_65 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiLInt (getANTI_LINT happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_66 = happySpecReduce_1 2# happyReduction_66-happyReduction_66 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiULInt (getANTI_ULINT happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_67 = happySpecReduce_1 2# happyReduction_67-happyReduction_67 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiLLInt (getANTI_LLINT happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_68 = happySpecReduce_1 2# happyReduction_68-happyReduction_68 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiULLInt (getANTI_ULLINT happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_69 = happySpecReduce_1 2# happyReduction_69-happyReduction_69 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiFloat (getANTI_FLOAT happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_70 = happySpecReduce_1 2# happyReduction_70-happyReduction_70 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiDouble (getANTI_DOUBLE happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_71 = happySpecReduce_1 2# happyReduction_71-happyReduction_71 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiLongDouble (getANTI_LONG_DOUBLE happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_72 = happySpecReduce_1 2# happyReduction_72-happyReduction_72 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiChar (getANTI_CHAR happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_73 = happySpecReduce_1 2# happyReduction_73-happyReduction_73 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn30- (AntiString (getANTI_STRING happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_74 = happySpecReduce_1 3# happyReduction_74-happyReduction_74 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn31- (L (locOf happy_var_1) T.Tlbrace- )}--happyReduce_75 = happySpecReduce_2 3# happyReduction_75-happyReduction_75 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn31- (L (locOf happy_var_1) T.Tlbrace- )}--happyReduce_76 = happySpecReduce_1 4# happyReduction_76-happyReduction_76 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn32- (L (locOf happy_var_1) T.Tsemi- )}--happyReduce_77 = happySpecReduce_2 4# happyReduction_77-happyReduction_77 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn32- (L (locOf happy_var_1) T.Tsemi- )}--happyReduce_78 = happySpecReduce_1 5# happyReduction_78-happyReduction_78 happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - happyIn33- (Var happy_var_1 (srclocOf happy_var_1)- )}--happyReduce_79 = happySpecReduce_1 5# happyReduction_79-happyReduction_79 happy_x_1- = case happyOut30 happy_x_1 of { happy_var_1 -> - happyIn33- (Const happy_var_1 (srclocOf happy_var_1)- )}--happyReduce_80 = happySpecReduce_1 5# happyReduction_80-happyReduction_80 happy_x_1- = case happyOut34 happy_x_1 of { happy_var_1 -> - happyIn33- (Const (mkStringConst happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_81 = happySpecReduce_3 5# happyReduction_81-happyReduction_81 happy_x_3- happy_x_2- happy_x_1- = case happyOut53 happy_x_2 of { happy_var_2 -> - happyIn33- (happy_var_2- )}--happyReduce_82 = happyMonadReduce 3# 5# happyReduction_82-happyReduction_82 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_2 of { happy_var_2 -> - ( unclosed (happy_var_1 <--> happy_var_2) "(")}}- ) (\r -> happyReturn (happyIn33 r))--happyReduce_83 = happySpecReduce_3 5# happyReduction_83-happyReduction_83 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut118 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn33- (let Block items _ = happy_var_2- in- StmExpr items (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_84 = happySpecReduce_1 5# happyReduction_84-happyReduction_84 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn33- (AntiExp (getANTI_EXP happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_85 = happySpecReduce_1 5# happyReduction_85-happyReduction_85 happy_x_1- = case happyOut156 happy_x_1 of { happy_var_1 -> - happyIn33- (happy_var_1- )}--happyReduce_86 = happySpecReduce_1 5# happyReduction_86-happyReduction_86 happy_x_1- = case happyOut163 happy_x_1 of { happy_var_1 -> - happyIn33- (happy_var_1- )}--happyReduce_87 = happySpecReduce_1 5# happyReduction_87-happyReduction_87 happy_x_1- = case happyOut170 happy_x_1 of { happy_var_1 -> - happyIn33- (happy_var_1- )}--happyReduce_88 = happySpecReduce_1 6# happyReduction_88-happyReduction_88 happy_x_1- = case happyOut35 happy_x_1 of { happy_var_1 -> - happyIn34- (let { slits = rev happy_var_1- ; raw = map (fst . unLoc) slits- ; s = (concat . map (snd . unLoc)) slits- }- in- StringLit raw s (srclocOf slits)- )}--happyReduce_89 = happySpecReduce_1 7# happyReduction_89-happyReduction_89 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn35- (rsingleton (L (locOf happy_var_1) (getSTRING happy_var_1))- )}--happyReduce_90 = happySpecReduce_2 7# happyReduction_90-happyReduction_90 happy_x_2- happy_x_1- = case happyOut35 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn35- (rcons (L (locOf happy_var_2) (getSTRING happy_var_2)) happy_var_1- )}}--happyReduce_91 = happySpecReduce_1 8# happyReduction_91-happyReduction_91 happy_x_1- = case happyOut52 happy_x_1 of { happy_var_1 -> - happyIn36- (rsingleton happy_var_1- )}--happyReduce_92 = happySpecReduce_3 8# happyReduction_92-happyReduction_92 happy_x_3- happy_x_2- happy_x_1- = case happyOut36 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn36- (rcons happy_var_3 happy_var_1- )}}--happyReduce_93 = happySpecReduce_1 9# happyReduction_93-happyReduction_93 happy_x_1- = case happyOut33 happy_x_1 of { happy_var_1 -> - happyIn37- (happy_var_1- )}--happyReduce_94 = happyMonadReduce 3# 9# happyReduction_94-happyReduction_94 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut37 happy_x_1 of { happy_var_1 -> - ( unclosed (locOf happy_var_1) "[")}- ) (\r -> happyReturn (happyIn37 r))--happyReduce_95 = happyReduce 4# 9# happyReduction_95-happyReduction_95 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut37 happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn37- (Index happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_96 = happyMonadReduce 3# 9# happyReduction_96-happyReduction_96 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - ( unclosed (locOf happy_var_2) "(")}- ) (\r -> happyReturn (happyIn37 r))--happyReduce_97 = happySpecReduce_3 9# happyReduction_97-happyReduction_97 happy_x_3- happy_x_2- happy_x_1- = case happyOut37 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn37- (FnCall happy_var_1 [] (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_98 = happyMonadReduce 4# 9# happyReduction_98-happyReduction_98 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut38 happy_x_3 of { happy_var_3 -> - ( unclosed (happy_var_2 <--> rev happy_var_3) "(")}}- ) (\r -> happyReturn (happyIn37 r))--happyReduce_99 = happyReduce 4# 9# happyReduction_99-happyReduction_99 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut37 happy_x_1 of { happy_var_1 -> - case happyOut38 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn37- (FnCall happy_var_1 (rev happy_var_3) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_100 = happyMonadReduce 4# 9# happyReduction_100-happyReduction_100 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut202 happy_x_3 of { happy_var_3 -> - ( unclosed (happy_var_2 <--> happy_var_3) "<<<")}}- ) (\r -> happyReturn (happyIn37 r))--happyReduce_101 = happyReduce 6# 9# happyReduction_101-happyReduction_101 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut37 happy_x_1 of { happy_var_1 -> - case happyOut202 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_6 of { happy_var_6 -> - happyIn37- (CudaCall happy_var_1 happy_var_3 [] (happy_var_1 `srcspan` happy_var_6)- ) `HappyStk` happyRest}}}--happyReduce_102 = happyMonadReduce 7# 9# happyReduction_102-happyReduction_102 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_5 of { happy_var_5 -> - case happyOut38 happy_x_6 of { happy_var_6 -> - ( unclosed (happy_var_5 <--> rev happy_var_6) "(")}}- ) (\r -> happyReturn (happyIn37 r))--happyReduce_103 = happyReduce 7# 9# happyReduction_103-happyReduction_103 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut37 happy_x_1 of { happy_var_1 -> - case happyOut202 happy_x_3 of { happy_var_3 -> - case happyOut38 happy_x_6 of { happy_var_6 -> - case happyOutTok happy_x_7 of { happy_var_7 -> - happyIn37- (CudaCall happy_var_1 happy_var_3 (rev happy_var_6) (happy_var_1 `srcspan` happy_var_7)- ) `HappyStk` happyRest}}}}--happyReduce_104 = happySpecReduce_3 9# happyReduction_104-happyReduction_104 happy_x_3- happy_x_2- happy_x_1- = case happyOut37 happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - happyIn37- (Member happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_105 = happySpecReduce_3 9# happyReduction_105-happyReduction_105 happy_x_3- happy_x_2- happy_x_1- = case happyOut37 happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - happyIn37- (PtrMember happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_106 = happySpecReduce_2 9# happyReduction_106-happyReduction_106 happy_x_2- happy_x_1- = case happyOut37 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn37- (PostInc happy_var_1 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_107 = happySpecReduce_2 9# happyReduction_107-happyReduction_107 happy_x_2- happy_x_1- = case happyOut37 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn37- (PostDec happy_var_1 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_108 = happyReduce 6# 9# happyReduction_108-happyReduction_108 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut104 happy_x_2 of { happy_var_2 -> - case happyOut109 happy_x_5 of { happy_var_5 -> - case happyOutTok happy_x_6 of { happy_var_6 -> - happyIn37- (CompoundLit (happy_var_2 :: Type) (rev happy_var_5) (happy_var_1 `srcspan` happy_var_6)- ) `HappyStk` happyRest}}}}--happyReduce_109 = happyReduce 7# 9# happyReduction_109-happyReduction_109 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut104 happy_x_2 of { happy_var_2 -> - case happyOut109 happy_x_5 of { happy_var_5 -> - case happyOutTok happy_x_7 of { happy_var_7 -> - happyIn37- (CompoundLit happy_var_2 (rev happy_var_5) (happy_var_1 `srcspan` happy_var_7)- ) `HappyStk` happyRest}}}}--happyReduce_110 = happyReduce 6# 9# happyReduction_110-happyReduction_110 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - case happyOut102 happy_x_5 of { happy_var_5 -> - case happyOutTok happy_x_6 of { happy_var_6 -> - happyIn37- (BuiltinVaArg happy_var_3 happy_var_5 (happy_var_1 `srcspan` happy_var_6)- ) `HappyStk` happyRest}}}}--happyReduce_111 = happySpecReduce_1 10# happyReduction_111-happyReduction_111 happy_x_1- = case happyOut52 happy_x_1 of { happy_var_1 -> - happyIn38- (rsingleton happy_var_1- )}--happyReduce_112 = happySpecReduce_1 10# happyReduction_112-happyReduction_112 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn38- (rsingleton (AntiArgs (getANTI_ARGS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_113 = happySpecReduce_3 10# happyReduction_113-happyReduction_113 happy_x_3- happy_x_2- happy_x_1- = case happyOut38 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn38- (rcons happy_var_3 happy_var_1- )}}--happyReduce_114 = happySpecReduce_3 10# happyReduction_114-happyReduction_114 happy_x_3- happy_x_2- happy_x_1- = case happyOut38 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn38- (rcons (AntiArgs (getANTI_ARGS happy_var_3) (srclocOf happy_var_3)) happy_var_1- )}}--happyReduce_115 = happySpecReduce_1 11# happyReduction_115-happyReduction_115 happy_x_1- = case happyOut37 happy_x_1 of { happy_var_1 -> - happyIn39- (happy_var_1- )}--happyReduce_116 = happySpecReduce_2 11# happyReduction_116-happyReduction_116 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut39 happy_x_2 of { happy_var_2 -> - happyIn39- (PreInc happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_117 = happySpecReduce_2 11# happyReduction_117-happyReduction_117 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut39 happy_x_2 of { happy_var_2 -> - happyIn39- (PreDec happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_118 = happySpecReduce_2 11# happyReduction_118-happyReduction_118 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut40 happy_x_2 of { happy_var_2 -> - happyIn39- (UnOp AddrOf happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_119 = happySpecReduce_2 11# happyReduction_119-happyReduction_119 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut40 happy_x_2 of { happy_var_2 -> - happyIn39- (UnOp Deref happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_120 = happySpecReduce_2 11# happyReduction_120-happyReduction_120 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut40 happy_x_2 of { happy_var_2 -> - happyIn39- (UnOp Positive happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_121 = happySpecReduce_2 11# happyReduction_121-happyReduction_121 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut40 happy_x_2 of { happy_var_2 -> - happyIn39- (UnOp Negate happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_122 = happySpecReduce_2 11# happyReduction_122-happyReduction_122 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut40 happy_x_2 of { happy_var_2 -> - happyIn39- (UnOp Not happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_123 = happySpecReduce_2 11# happyReduction_123-happyReduction_123 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut40 happy_x_2 of { happy_var_2 -> - happyIn39- (UnOp Lnot happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_124 = happySpecReduce_2 11# happyReduction_124-happyReduction_124 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut39 happy_x_2 of { happy_var_2 -> - happyIn39- (SizeofExp happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_125 = happyReduce 4# 11# happyReduction_125-happyReduction_125 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut104 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn39- (SizeofType happy_var_3 (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_126 = happyMonadReduce 4# 11# happyReduction_126-happyReduction_126 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut104 happy_x_3 of { happy_var_3 -> - ( unclosed (happy_var_2 <--> happy_var_3) "(")}}- ) (\r -> happyReturn (happyIn39 r))--happyReduce_127 = happySpecReduce_1 12# happyReduction_127-happyReduction_127 happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - happyIn40- (happy_var_1- )}--happyReduce_128 = happyReduce 4# 12# happyReduction_128-happyReduction_128 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut104 happy_x_2 of { happy_var_2 -> - case happyOut40 happy_x_4 of { happy_var_4 -> - happyIn40- (Cast happy_var_2 happy_var_4 (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_129 = happyMonadReduce 3# 12# happyReduction_129-happyReduction_129 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut104 happy_x_2 of { happy_var_2 -> - ( unclosed (happy_var_1 <--> happy_var_2) "(")}}- ) (\r -> happyReturn (happyIn40 r))--happyReduce_130 = happySpecReduce_1 13# happyReduction_130-happyReduction_130 happy_x_1- = case happyOut40 happy_x_1 of { happy_var_1 -> - happyIn41- (happy_var_1- )}--happyReduce_131 = happySpecReduce_3 13# happyReduction_131-happyReduction_131 happy_x_3- happy_x_2- happy_x_1- = case happyOut41 happy_x_1 of { happy_var_1 -> - case happyOut40 happy_x_3 of { happy_var_3 -> - happyIn41- (BinOp Mul happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_132 = happySpecReduce_3 13# happyReduction_132-happyReduction_132 happy_x_3- happy_x_2- happy_x_1- = case happyOut41 happy_x_1 of { happy_var_1 -> - case happyOut40 happy_x_3 of { happy_var_3 -> - happyIn41- (BinOp Div happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_133 = happySpecReduce_3 13# happyReduction_133-happyReduction_133 happy_x_3- happy_x_2- happy_x_1- = case happyOut41 happy_x_1 of { happy_var_1 -> - case happyOut40 happy_x_3 of { happy_var_3 -> - happyIn41- (BinOp Mod happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_134 = happySpecReduce_1 14# happyReduction_134-happyReduction_134 happy_x_1- = case happyOut41 happy_x_1 of { happy_var_1 -> - happyIn42- (happy_var_1- )}--happyReduce_135 = happySpecReduce_3 14# happyReduction_135-happyReduction_135 happy_x_3- happy_x_2- happy_x_1- = case happyOut42 happy_x_1 of { happy_var_1 -> - case happyOut41 happy_x_3 of { happy_var_3 -> - happyIn42- (BinOp Add happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_136 = happySpecReduce_3 14# happyReduction_136-happyReduction_136 happy_x_3- happy_x_2- happy_x_1- = case happyOut42 happy_x_1 of { happy_var_1 -> - case happyOut41 happy_x_3 of { happy_var_3 -> - happyIn42- (BinOp Sub happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_137 = happySpecReduce_1 15# happyReduction_137-happyReduction_137 happy_x_1- = case happyOut42 happy_x_1 of { happy_var_1 -> - happyIn43- (happy_var_1- )}--happyReduce_138 = happySpecReduce_3 15# happyReduction_138-happyReduction_138 happy_x_3- happy_x_2- happy_x_1- = case happyOut43 happy_x_1 of { happy_var_1 -> - case happyOut42 happy_x_3 of { happy_var_3 -> - happyIn43- (BinOp Lsh happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_139 = happySpecReduce_3 15# happyReduction_139-happyReduction_139 happy_x_3- happy_x_2- happy_x_1- = case happyOut43 happy_x_1 of { happy_var_1 -> - case happyOut42 happy_x_3 of { happy_var_3 -> - happyIn43- (BinOp Rsh happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_140 = happySpecReduce_1 16# happyReduction_140-happyReduction_140 happy_x_1- = case happyOut43 happy_x_1 of { happy_var_1 -> - happyIn44- (happy_var_1- )}--happyReduce_141 = happySpecReduce_3 16# happyReduction_141-happyReduction_141 happy_x_3- happy_x_2- happy_x_1- = case happyOut44 happy_x_1 of { happy_var_1 -> - case happyOut43 happy_x_3 of { happy_var_3 -> - happyIn44- (BinOp Lt happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_142 = happySpecReduce_3 16# happyReduction_142-happyReduction_142 happy_x_3- happy_x_2- happy_x_1- = case happyOut44 happy_x_1 of { happy_var_1 -> - case happyOut43 happy_x_3 of { happy_var_3 -> - happyIn44- (BinOp Gt happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_143 = happySpecReduce_3 16# happyReduction_143-happyReduction_143 happy_x_3- happy_x_2- happy_x_1- = case happyOut44 happy_x_1 of { happy_var_1 -> - case happyOut43 happy_x_3 of { happy_var_3 -> - happyIn44- (BinOp Le happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_144 = happySpecReduce_3 16# happyReduction_144-happyReduction_144 happy_x_3- happy_x_2- happy_x_1- = case happyOut44 happy_x_1 of { happy_var_1 -> - case happyOut43 happy_x_3 of { happy_var_3 -> - happyIn44- (BinOp Ge happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_145 = happySpecReduce_1 17# happyReduction_145-happyReduction_145 happy_x_1- = case happyOut44 happy_x_1 of { happy_var_1 -> - happyIn45- (happy_var_1- )}--happyReduce_146 = happySpecReduce_3 17# happyReduction_146-happyReduction_146 happy_x_3- happy_x_2- happy_x_1- = case happyOut45 happy_x_1 of { happy_var_1 -> - case happyOut44 happy_x_3 of { happy_var_3 -> - happyIn45- (BinOp Eq happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_147 = happySpecReduce_3 17# happyReduction_147-happyReduction_147 happy_x_3- happy_x_2- happy_x_1- = case happyOut45 happy_x_1 of { happy_var_1 -> - case happyOut44 happy_x_3 of { happy_var_3 -> - happyIn45- (BinOp Ne happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_148 = happySpecReduce_1 18# happyReduction_148-happyReduction_148 happy_x_1- = case happyOut45 happy_x_1 of { happy_var_1 -> - happyIn46- (happy_var_1- )}--happyReduce_149 = happySpecReduce_3 18# happyReduction_149-happyReduction_149 happy_x_3- happy_x_2- happy_x_1- = case happyOut46 happy_x_1 of { happy_var_1 -> - case happyOut45 happy_x_3 of { happy_var_3 -> - happyIn46- (BinOp And happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_150 = happySpecReduce_1 19# happyReduction_150-happyReduction_150 happy_x_1- = case happyOut46 happy_x_1 of { happy_var_1 -> - happyIn47- (happy_var_1- )}--happyReduce_151 = happySpecReduce_3 19# happyReduction_151-happyReduction_151 happy_x_3- happy_x_2- happy_x_1- = case happyOut47 happy_x_1 of { happy_var_1 -> - case happyOut46 happy_x_3 of { happy_var_3 -> - happyIn47- (BinOp Xor happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_152 = happySpecReduce_1 20# happyReduction_152-happyReduction_152 happy_x_1- = case happyOut47 happy_x_1 of { happy_var_1 -> - happyIn48- (happy_var_1- )}--happyReduce_153 = happySpecReduce_3 20# happyReduction_153-happyReduction_153 happy_x_3- happy_x_2- happy_x_1- = case happyOut48 happy_x_1 of { happy_var_1 -> - case happyOut47 happy_x_3 of { happy_var_3 -> - happyIn48- (BinOp Or happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_154 = happySpecReduce_1 21# happyReduction_154-happyReduction_154 happy_x_1- = case happyOut48 happy_x_1 of { happy_var_1 -> - happyIn49- (happy_var_1- )}--happyReduce_155 = happySpecReduce_3 21# happyReduction_155-happyReduction_155 happy_x_3- happy_x_2- happy_x_1- = case happyOut49 happy_x_1 of { happy_var_1 -> - case happyOut48 happy_x_3 of { happy_var_3 -> - happyIn49- (BinOp Land happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_156 = happySpecReduce_1 22# happyReduction_156-happyReduction_156 happy_x_1- = case happyOut49 happy_x_1 of { happy_var_1 -> - happyIn50- (happy_var_1- )}--happyReduce_157 = happySpecReduce_3 22# happyReduction_157-happyReduction_157 happy_x_3- happy_x_2- happy_x_1- = case happyOut50 happy_x_1 of { happy_var_1 -> - case happyOut49 happy_x_3 of { happy_var_3 -> - happyIn50- (BinOp Lor happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_158 = happySpecReduce_1 23# happyReduction_158-happyReduction_158 happy_x_1- = case happyOut50 happy_x_1 of { happy_var_1 -> - happyIn51- (happy_var_1- )}--happyReduce_159 = happyReduce 5# 23# happyReduction_159-happyReduction_159 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut50 happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - case happyOut51 happy_x_5 of { happy_var_5 -> - happyIn51- (Cond happy_var_1 happy_var_3 happy_var_5 (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_160 = happySpecReduce_1 24# happyReduction_160-happyReduction_160 happy_x_1- = case happyOut51 happy_x_1 of { happy_var_1 -> - happyIn52- (happy_var_1- )}--happyReduce_161 = happySpecReduce_3 24# happyReduction_161-happyReduction_161 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 JustAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_162 = happySpecReduce_3 24# happyReduction_162-happyReduction_162 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 MulAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_163 = happySpecReduce_3 24# happyReduction_163-happyReduction_163 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 DivAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_164 = happySpecReduce_3 24# happyReduction_164-happyReduction_164 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 ModAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_165 = happySpecReduce_3 24# happyReduction_165-happyReduction_165 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 AddAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_166 = happySpecReduce_3 24# happyReduction_166-happyReduction_166 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 SubAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_167 = happySpecReduce_3 24# happyReduction_167-happyReduction_167 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 LshAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_168 = happySpecReduce_3 24# happyReduction_168-happyReduction_168 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 RshAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_169 = happySpecReduce_3 24# happyReduction_169-happyReduction_169 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 AndAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_170 = happySpecReduce_3 24# happyReduction_170-happyReduction_170 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 XorAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_171 = happySpecReduce_3 24# happyReduction_171-happyReduction_171 happy_x_3- happy_x_2- happy_x_1- = case happyOut39 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn52- (Assign happy_var_1 OrAssign happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_172 = happySpecReduce_1 25# happyReduction_172-happyReduction_172 happy_x_1- = case happyOut52 happy_x_1 of { happy_var_1 -> - happyIn53- (happy_var_1- )}--happyReduce_173 = happySpecReduce_3 25# happyReduction_173-happyReduction_173 happy_x_3- happy_x_2- happy_x_1- = case happyOut53 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn53- (Seq happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_174 = happySpecReduce_0 26# happyReduction_174-happyReduction_174 = happyIn54- (Nothing- )--happyReduce_175 = happySpecReduce_1 26# happyReduction_175-happyReduction_175 happy_x_1- = case happyOut53 happy_x_1 of { happy_var_1 -> - happyIn54- (Just happy_var_1- )}--happyReduce_176 = happySpecReduce_1 27# happyReduction_176-happyReduction_176 happy_x_1- = case happyOut51 happy_x_1 of { happy_var_1 -> - happyIn55- (happy_var_1- )}--happyReduce_177 = happySpecReduce_2 28# happyReduction_177-happyReduction_177 happy_x_2- happy_x_1- = case happyOut58 happy_x_1 of { happy_var_1 -> - happyIn56- (happy_var_1- )}--happyReduce_178 = happySpecReduce_2 29# happyReduction_178-happyReduction_178 happy_x_2- happy_x_1- = case happyOut59 happy_x_1 of { happy_var_1 -> - happyIn57- (happy_var_1- )}--happyReduce_179 = happyMonadReduce 1# 30# happyReduction_179-happyReduction_179 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut60 happy_x_1 of { happy_var_1 -> - ( do{ let (dspec, decl) = happy_var_1- ; checkInitGroup dspec decl [] []- })}- ) (\r -> happyReturn (happyIn58 r))--happyReduce_180 = happyMonadReduce 2# 30# happyReduction_180-happyReduction_180 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut60 happy_x_1 of { happy_var_1 -> - case happyOut71 happy_x_2 of { happy_var_2 -> - ( do{ let (dspec, decl) = happy_var_1- ; let inits = rev happy_var_2- ; checkInitGroup dspec decl [] (rev happy_var_2)- })}}- ) (\r -> happyReturn (happyIn58 r))--happyReduce_181 = happyMonadReduce 2# 30# happyReduction_181-happyReduction_181 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut60 happy_x_1 of { happy_var_1 -> - ( do{ let (_, decl) = happy_var_1- ; expected ["';'"] (Just "declaration")- })}- ) (\r -> happyReturn (happyIn58 r))--happyReduce_182 = happySpecReduce_1 30# happyReduction_182-happyReduction_182 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn58- (AntiDecl (getANTI_DECL happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_183 = happyMonadReduce 1# 31# happyReduction_183-happyReduction_183 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut61 happy_x_1 of { happy_var_1 -> - ( do{ let (dspec, decl) = happy_var_1- ; checkInitGroup dspec decl [] []- })}- ) (\r -> happyReturn (happyIn59 r))--happyReduce_184 = happyMonadReduce 2# 31# happyReduction_184-happyReduction_184 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut61 happy_x_1 of { happy_var_1 -> - case happyOut71 happy_x_2 of { happy_var_2 -> - ( do{ let (dspec, decl) = happy_var_1- ; let inits = rev happy_var_2- ; checkInitGroup dspec decl [] (rev happy_var_2)- })}}- ) (\r -> happyReturn (happyIn59 r))--happyReduce_185 = happyMonadReduce 2# 31# happyReduction_185-happyReduction_185 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut61 happy_x_1 of { happy_var_1 -> - ( do{ let (_, decl) = happy_var_1- ; expected ["';'"] (Just "declaration")- })}- ) (\r -> happyReturn (happyIn59 r))--happyReduce_186 = happySpecReduce_1 31# happyReduction_186-happyReduction_186 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn59- (AntiDecl (getANTI_DECL happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_187 = happySpecReduce_1 32# happyReduction_187-happyReduction_187 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn60- (let { v = getANTI_TYPE happy_var_1- ; l = srclocOf happy_var_1- }- in- (AntiTypeDeclSpec [] [] v l, AntiTypeDecl v l)- )}--happyReduce_188 = happySpecReduce_2 32# happyReduction_188-happyReduction_188 happy_x_2- happy_x_1- = case happyOut67 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn60- (let { storage = mkStorage happy_var_1- ; typeQuals = mkTypeQuals happy_var_1- ; v = getANTI_TYPE happy_var_2- ; l = happy_var_1 `srcspan` happy_var_2- }- in- (AntiTypeDeclSpec storage typeQuals v l, AntiTypeDecl v l)- )}}--happyReduce_189 = happySpecReduce_1 32# happyReduction_189-happyReduction_189 happy_x_1- = case happyOut62 happy_x_1 of { happy_var_1 -> - happyIn60- (happy_var_1- )}--happyReduce_190 = happySpecReduce_1 32# happyReduction_190-happyReduction_190 happy_x_1- = case happyOut64 happy_x_1 of { happy_var_1 -> - happyIn60- (happy_var_1- )}--happyReduce_191 = happySpecReduce_1 33# happyReduction_191-happyReduction_191 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn61- (let { v = getANTI_TYPE happy_var_1- ; l = srclocOf happy_var_1- }- in- (AntiTypeDeclSpec [] [] v l, AntiTypeDecl v l)- )}--happyReduce_192 = happySpecReduce_2 33# happyReduction_192-happyReduction_192 happy_x_2- happy_x_1- = case happyOut69 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn61- (let { storage = mkStorage happy_var_1- ; typeQuals = mkTypeQuals happy_var_1- ; v = getANTI_TYPE happy_var_2- ; l = happy_var_1 `srcspan` happy_var_2- }- in- (AntiTypeDeclSpec storage typeQuals v l, AntiTypeDecl v l)- )}}--happyReduce_193 = happySpecReduce_1 33# happyReduction_193-happyReduction_193 happy_x_1- = case happyOut63 happy_x_1 of { happy_var_1 -> - happyIn61- (happy_var_1- )}--happyReduce_194 = happySpecReduce_1 33# happyReduction_194-happyReduction_194 happy_x_1- = case happyOut65 happy_x_1 of { happy_var_1 -> - happyIn61- (happy_var_1- )}--happyReduce_195 = happySpecReduce_1 34# happyReduction_195-happyReduction_195 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn62- (let dspec = AntiDeclSpec (getANTI_SPEC happy_var_1) (srclocOf happy_var_1)- in- (dspec, DeclRoot (srclocOf happy_var_1))- )}--happyReduce_196 = happyMonadReduce 1# 34# happyReduction_196-happyReduction_196 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut67 happy_x_1 of { happy_var_1 -> - ( do{ dspec <- mkDeclSpec happy_var_1- ; return (dspec, DeclRoot (srclocOf happy_var_1))- })}- ) (\r -> happyReturn (happyIn62 r))--happyReduce_197 = happyMonadReduce 1# 34# happyReduction_197-happyReduction_197 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut74 happy_x_1 of { happy_var_1 -> - ( do{ dspec <- mkDeclSpec [happy_var_1]- ; return (dspec, DeclRoot (srclocOf happy_var_1) )- })}- ) (\r -> happyReturn (happyIn62 r))--happyReduce_198 = happyMonadReduce 2# 34# happyReduction_198-happyReduction_198 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut74 happy_x_1 of { happy_var_1 -> - case happyOut66 happy_x_2 of { happy_var_2 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 : rev happy_var_2)- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_2))- })}}- ) (\r -> happyReturn (happyIn62 r))--happyReduce_199 = happyMonadReduce 2# 34# happyReduction_199-happyReduction_199 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut67 happy_x_1 of { happy_var_1 -> - case happyOut74 happy_x_2 of { happy_var_2 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 ++ [happy_var_2])- ; return $(dspec, DeclRoot (happy_var_1 `srcspan` happy_var_2))- })}}- ) (\r -> happyReturn (happyIn62 r))--happyReduce_200 = happyMonadReduce 3# 34# happyReduction_200-happyReduction_200 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut67 happy_x_1 of { happy_var_1 -> - case happyOut74 happy_x_2 of { happy_var_2 -> - case happyOut66 happy_x_3 of { happy_var_3 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 ++ happy_var_2 : rev happy_var_3)- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_3))- })}}}- ) (\r -> happyReturn (happyIn62 r))--happyReduce_201 = happySpecReduce_1 35# happyReduction_201-happyReduction_201 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn63- (let dspec = AntiDeclSpec (getANTI_SPEC happy_var_1) (srclocOf happy_var_1)- in- (dspec, DeclRoot (srclocOf happy_var_1))- )}--happyReduce_202 = happyMonadReduce 1# 35# happyReduction_202-happyReduction_202 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut69 happy_x_1 of { happy_var_1 -> - ( do{ dspec <- mkDeclSpec happy_var_1- ; return (dspec, DeclRoot (srclocOf happy_var_1))- })}- ) (\r -> happyReturn (happyIn63 r))--happyReduce_203 = happyMonadReduce 1# 35# happyReduction_203-happyReduction_203 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut74 happy_x_1 of { happy_var_1 -> - ( do{ dspec <- mkDeclSpec [happy_var_1]- ; return (dspec, DeclRoot (srclocOf happy_var_1) )- })}- ) (\r -> happyReturn (happyIn63 r))--happyReduce_204 = happyMonadReduce 2# 35# happyReduction_204-happyReduction_204 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut74 happy_x_1 of { happy_var_1 -> - case happyOut66 happy_x_2 of { happy_var_2 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 : rev happy_var_2)- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_2))- })}}- ) (\r -> happyReturn (happyIn63 r))--happyReduce_205 = happyMonadReduce 2# 35# happyReduction_205-happyReduction_205 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut69 happy_x_1 of { happy_var_1 -> - case happyOut74 happy_x_2 of { happy_var_2 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 ++ [happy_var_2])- ; return $(dspec, DeclRoot (happy_var_1 `srcspan` happy_var_2))- })}}- ) (\r -> happyReturn (happyIn63 r))--happyReduce_206 = happyMonadReduce 3# 35# happyReduction_206-happyReduction_206 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut69 happy_x_1 of { happy_var_1 -> - case happyOut74 happy_x_2 of { happy_var_2 -> - case happyOut66 happy_x_3 of { happy_var_3 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 ++ happy_var_2 : rev happy_var_3)- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_3))- })}}}- ) (\r -> happyReturn (happyIn63 r))--happyReduce_207 = happyMonadReduce 1# 36# happyReduction_207-happyReduction_207 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut107 happy_x_1 of { happy_var_1 -> - ( do{ dspec <- mkDeclSpec [happy_var_1]- ; return (dspec, DeclRoot (srclocOf happy_var_1))- })}- ) (\r -> happyReturn (happyIn64 r))--happyReduce_208 = happyMonadReduce 2# 36# happyReduction_208-happyReduction_208 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut107 happy_x_1 of { happy_var_1 -> - case happyOut67 happy_x_2 of { happy_var_2 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 : happy_var_2)- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_2))- })}}- ) (\r -> happyReturn (happyIn64 r))--happyReduce_209 = happyMonadReduce 2# 36# happyReduction_209-happyReduction_209 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut67 happy_x_1 of { happy_var_1 -> - case happyOut107 happy_x_2 of { happy_var_2 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 ++ [happy_var_2])- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_2))- })}}- ) (\r -> happyReturn (happyIn64 r))--happyReduce_210 = happyMonadReduce 3# 36# happyReduction_210-happyReduction_210 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut67 happy_x_1 of { happy_var_1 -> - case happyOut107 happy_x_2 of { happy_var_2 -> - case happyOut67 happy_x_3 of { happy_var_3 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 ++ happy_var_2 : happy_var_3)- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_3))- })}}}- ) (\r -> happyReturn (happyIn64 r))--happyReduce_211 = happyMonadReduce 1# 37# happyReduction_211-happyReduction_211 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut107 happy_x_1 of { happy_var_1 -> - ( do{ dspec <- mkDeclSpec [happy_var_1]- ; return (dspec, DeclRoot (srclocOf happy_var_1))- })}- ) (\r -> happyReturn (happyIn65 r))--happyReduce_212 = happyMonadReduce 2# 37# happyReduction_212-happyReduction_212 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut107 happy_x_1 of { happy_var_1 -> - case happyOut67 happy_x_2 of { happy_var_2 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 : happy_var_2)- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_2))- })}}- ) (\r -> happyReturn (happyIn65 r))--happyReduce_213 = happyMonadReduce 2# 37# happyReduction_213-happyReduction_213 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut69 happy_x_1 of { happy_var_1 -> - case happyOut107 happy_x_2 of { happy_var_2 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 ++ [happy_var_2])- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_2))- })}}- ) (\r -> happyReturn (happyIn65 r))--happyReduce_214 = happyMonadReduce 3# 37# happyReduction_214-happyReduction_214 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut69 happy_x_1 of { happy_var_1 -> - case happyOut107 happy_x_2 of { happy_var_2 -> - case happyOut67 happy_x_3 of { happy_var_3 -> - ( do{ dspec <- mkDeclSpec (happy_var_1 ++ happy_var_2 : happy_var_3)- ; return (dspec, DeclRoot (happy_var_1 `srcspan` happy_var_3))- })}}}- ) (\r -> happyReturn (happyIn65 r))--happyReduce_215 = happySpecReduce_1 38# happyReduction_215-happyReduction_215 happy_x_1- = case happyOut73 happy_x_1 of { happy_var_1 -> - happyIn66- (rsingleton happy_var_1- )}--happyReduce_216 = happySpecReduce_1 38# happyReduction_216-happyReduction_216 happy_x_1- = case happyOut74 happy_x_1 of { happy_var_1 -> - happyIn66- (rsingleton happy_var_1- )}--happyReduce_217 = happySpecReduce_1 38# happyReduction_217-happyReduction_217 happy_x_1- = case happyOut86 happy_x_1 of { happy_var_1 -> - happyIn66- (rsingleton happy_var_1- )}--happyReduce_218 = happySpecReduce_1 38# happyReduction_218-happyReduction_218 happy_x_1- = case happyOut138 happy_x_1 of { happy_var_1 -> - happyIn66- (rapp (map TSAttr happy_var_1) rnil- )}--happyReduce_219 = happySpecReduce_2 38# happyReduction_219-happyReduction_219 happy_x_2- happy_x_1- = case happyOut66 happy_x_1 of { happy_var_1 -> - case happyOut73 happy_x_2 of { happy_var_2 -> - happyIn66- (rcons happy_var_2 happy_var_1- )}}--happyReduce_220 = happySpecReduce_2 38# happyReduction_220-happyReduction_220 happy_x_2- happy_x_1- = case happyOut66 happy_x_1 of { happy_var_1 -> - case happyOut74 happy_x_2 of { happy_var_2 -> - happyIn66- (rcons happy_var_2 happy_var_1- )}}--happyReduce_221 = happySpecReduce_2 38# happyReduction_221-happyReduction_221 happy_x_2- happy_x_1- = case happyOut66 happy_x_1 of { happy_var_1 -> - case happyOut86 happy_x_2 of { happy_var_2 -> - happyIn66- (rcons happy_var_2 happy_var_1- )}}--happyReduce_222 = happySpecReduce_2 38# happyReduction_222-happyReduction_222 happy_x_2- happy_x_1- = case happyOut66 happy_x_1 of { happy_var_1 -> - case happyOut138 happy_x_2 of { happy_var_2 -> - happyIn66- (rapp (map TSAttr happy_var_2) happy_var_1- )}}--happyReduce_223 = happySpecReduce_1 39# happyReduction_223-happyReduction_223 happy_x_1- = case happyOut68 happy_x_1 of { happy_var_1 -> - happyIn67- (rev happy_var_1- )}--happyReduce_224 = happySpecReduce_1 40# happyReduction_224-happyReduction_224 happy_x_1- = case happyOut73 happy_x_1 of { happy_var_1 -> - happyIn68- (rsingleton happy_var_1- )}--happyReduce_225 = happySpecReduce_1 40# happyReduction_225-happyReduction_225 happy_x_1- = case happyOut86 happy_x_1 of { happy_var_1 -> - happyIn68- (rsingleton happy_var_1- )}--happyReduce_226 = happySpecReduce_1 40# happyReduction_226-happyReduction_226 happy_x_1- = case happyOut138 happy_x_1 of { happy_var_1 -> - happyIn68- (rapp (map TSAttr happy_var_1) rnil- )}--happyReduce_227 = happySpecReduce_2 40# happyReduction_227-happyReduction_227 happy_x_2- happy_x_1- = case happyOut68 happy_x_1 of { happy_var_1 -> - case happyOut73 happy_x_2 of { happy_var_2 -> - happyIn68- (rcons happy_var_2 happy_var_1- )}}--happyReduce_228 = happySpecReduce_2 40# happyReduction_228-happyReduction_228 happy_x_2- happy_x_1- = case happyOut68 happy_x_1 of { happy_var_1 -> - case happyOut86 happy_x_2 of { happy_var_2 -> - happyIn68- (rcons happy_var_2 happy_var_1- )}}--happyReduce_229 = happySpecReduce_2 40# happyReduction_229-happyReduction_229 happy_x_2- happy_x_1- = case happyOut68 happy_x_1 of { happy_var_1 -> - case happyOut138 happy_x_2 of { happy_var_2 -> - happyIn68- (rapp (map TSAttr happy_var_2) happy_var_1- )}}--happyReduce_230 = happySpecReduce_1 41# happyReduction_230-happyReduction_230 happy_x_1- = case happyOut70 happy_x_1 of { happy_var_1 -> - happyIn69- (rev happy_var_1- )}--happyReduce_231 = happySpecReduce_1 42# happyReduction_231-happyReduction_231 happy_x_1- = case happyOut73 happy_x_1 of { happy_var_1 -> - happyIn70- (rsingleton happy_var_1- )}--happyReduce_232 = happySpecReduce_1 42# happyReduction_232-happyReduction_232 happy_x_1- = case happyOut86 happy_x_1 of { happy_var_1 -> - happyIn70- (rsingleton happy_var_1- )}--happyReduce_233 = happySpecReduce_2 42# happyReduction_233-happyReduction_233 happy_x_2- happy_x_1- = case happyOut70 happy_x_1 of { happy_var_1 -> - case happyOut73 happy_x_2 of { happy_var_2 -> - happyIn70- (rcons happy_var_2 happy_var_1- )}}--happyReduce_234 = happySpecReduce_2 42# happyReduction_234-happyReduction_234 happy_x_2- happy_x_1- = case happyOut70 happy_x_1 of { happy_var_1 -> - case happyOut86 happy_x_2 of { happy_var_2 -> - happyIn70- (rcons happy_var_2 happy_var_1- )}}--happyReduce_235 = happySpecReduce_2 42# happyReduction_235-happyReduction_235 happy_x_2- happy_x_1- = case happyOut70 happy_x_1 of { happy_var_1 -> - case happyOut138 happy_x_2 of { happy_var_2 -> - happyIn70- (rapp (map TSAttr happy_var_2) happy_var_1- )}}--happyReduce_236 = happySpecReduce_1 43# happyReduction_236-happyReduction_236 happy_x_1- = case happyOut72 happy_x_1 of { happy_var_1 -> - happyIn71- (rsingleton happy_var_1- )}--happyReduce_237 = happySpecReduce_3 43# happyReduction_237-happyReduction_237 happy_x_3- happy_x_2- happy_x_1- = case happyOut71 happy_x_1 of { happy_var_1 -> - case happyOut72 happy_x_3 of { happy_var_3 -> - happyIn71- (rcons happy_var_3 happy_var_1- )}}--happyReduce_238 = happySpecReduce_2 44# happyReduction_238-happyReduction_238 happy_x_2- happy_x_1- = case happyOut91 happy_x_1 of { happy_var_1 -> - case happyOut134 happy_x_2 of { happy_var_2 -> - happyIn72- (let { (ident, declToDecl) = happy_var_1- ; decl = declToDecl (declRoot ident)- ; (attrs, asmlabel) = unLoc happy_var_2- }- in- Init ident decl asmlabel Nothing attrs (ident `srcspan` happy_var_2)- )}}--happyReduce_239 = happyReduce 4# 44# happyReduction_239-happyReduction_239 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut91 happy_x_1 of { happy_var_1 -> - case happyOut134 happy_x_2 of { happy_var_2 -> - case happyOut108 happy_x_4 of { happy_var_4 -> - happyIn72- (let { (ident, declToDecl) = happy_var_1- ; decl = declToDecl (declRoot ident)- ; (attrs, asmlabel) = unLoc happy_var_2- }- in- Init ident decl asmlabel (Just happy_var_4) attrs (ident `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_240 = happyMonadReduce 2# 44# happyReduction_240-happyReduction_240 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut91 happy_x_1 of { happy_var_1 -> - ( do{ let (ident, declToDecl) = happy_var_1- ; let decl = declToDecl (declRoot ident)- ; expected ["'='"] Nothing- })}- ) (\r -> happyReturn (happyIn72 r))--happyReduce_241 = happySpecReduce_1 45# happyReduction_241-happyReduction_241 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn73- (TSauto (srclocOf happy_var_1)- )}--happyReduce_242 = happySpecReduce_1 45# happyReduction_242-happyReduction_242 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn73- (TSregister (srclocOf happy_var_1)- )}--happyReduce_243 = happySpecReduce_1 45# happyReduction_243-happyReduction_243 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn73- (TSstatic (srclocOf happy_var_1)- )}--happyReduce_244 = happySpecReduce_1 45# happyReduction_244-happyReduction_244 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn73- (TSextern Nothing (srclocOf happy_var_1)- )}--happyReduce_245 = happySpecReduce_2 45# happyReduction_245-happyReduction_245 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut34 happy_x_2 of { happy_var_2 -> - happyIn73- (TSextern (Just happy_var_2) (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_246 = happySpecReduce_1 45# happyReduction_246-happyReduction_246 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn73- (TStypedef (srclocOf happy_var_1)- )}--happyReduce_247 = happySpecReduce_1 45# happyReduction_247-happyReduction_247 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn73- (TS__block (srclocOf happy_var_1)- )}--happyReduce_248 = happySpecReduce_1 45# happyReduction_248-happyReduction_248 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn73- (TSObjC__weak (srclocOf happy_var_1)- )}--happyReduce_249 = happySpecReduce_1 45# happyReduction_249-happyReduction_249 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn73- (TSObjC__strong (srclocOf happy_var_1)- )}--happyReduce_250 = happySpecReduce_1 45# happyReduction_250-happyReduction_250 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn73- (TSObjC__unsafe_unretained (srclocOf happy_var_1)- )}--happyReduce_251 = happySpecReduce_1 46# happyReduction_251-happyReduction_251 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSvoid (srclocOf happy_var_1)- )}--happyReduce_252 = happySpecReduce_1 46# happyReduction_252-happyReduction_252 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSchar (srclocOf happy_var_1)- )}--happyReduce_253 = happySpecReduce_1 46# happyReduction_253-happyReduction_253 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSshort (srclocOf happy_var_1)- )}--happyReduce_254 = happySpecReduce_1 46# happyReduction_254-happyReduction_254 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSint (srclocOf happy_var_1)- )}--happyReduce_255 = happySpecReduce_1 46# happyReduction_255-happyReduction_255 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSlong (srclocOf happy_var_1)- )}--happyReduce_256 = happySpecReduce_1 46# happyReduction_256-happyReduction_256 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSfloat (srclocOf happy_var_1)- )}--happyReduce_257 = happySpecReduce_1 46# happyReduction_257-happyReduction_257 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSdouble (srclocOf happy_var_1)- )}--happyReduce_258 = happySpecReduce_1 46# happyReduction_258-happyReduction_258 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSsigned (srclocOf happy_var_1)- )}--happyReduce_259 = happySpecReduce_1 46# happyReduction_259-happyReduction_259 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSunsigned (srclocOf happy_var_1)- )}--happyReduce_260 = happySpecReduce_1 46# happyReduction_260-happyReduction_260 happy_x_1- = case happyOut75 happy_x_1 of { happy_var_1 -> - happyIn74- (happy_var_1- )}--happyReduce_261 = happySpecReduce_1 46# happyReduction_261-happyReduction_261 happy_x_1- = case happyOut83 happy_x_1 of { happy_var_1 -> - happyIn74- (happy_var_1- )}--happyReduce_262 = happySpecReduce_1 46# happyReduction_262-happyReduction_262 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TS_Bool (srclocOf happy_var_1)- )}--happyReduce_263 = happySpecReduce_1 46# happyReduction_263-happyReduction_263 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TS_Complex (srclocOf happy_var_1)- )}--happyReduce_264 = happySpecReduce_1 46# happyReduction_264-happyReduction_264 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TS_Imaginary (srclocOf happy_var_1)- )}--happyReduce_265 = happySpecReduce_1 46# happyReduction_265-happyReduction_265 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn74- (TSva_list (srclocOf happy_var_1)- )}--happyReduce_266 = happySpecReduce_2 47# happyReduction_266-happyReduction_266 happy_x_2- happy_x_1- = case happyOut76 happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_2 of { happy_var_2 -> - happyIn75- ((unLoc happy_var_1) (Just happy_var_2) Nothing [] (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_267 = happySpecReduce_3 47# happyReduction_267-happyReduction_267 happy_x_3- happy_x_2- happy_x_1- = case happyOut76 happy_x_1 of { happy_var_1 -> - case happyOut137 happy_x_2 of { happy_var_2 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - happyIn75- ((unLoc happy_var_1) (Just happy_var_3) Nothing happy_var_2 (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_268 = happyReduce 4# 47# happyReduction_268-happyReduction_268 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut76 happy_x_1 of { happy_var_1 -> - case happyOut77 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn75- ((unLoc happy_var_1) Nothing (Just (rev happy_var_3)) [] (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_269 = happyMonadReduce 4# 47# happyReduction_269-happyReduction_269 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut76 happy_x_1 of { happy_var_1 -> - case happyOut77 happy_x_3 of { happy_var_3 -> - ( unclosed (happy_var_1 <--> rev happy_var_3) "{")}}- ) (\r -> happyReturn (happyIn75 r))--happyReduce_270 = happyReduce 5# 47# happyReduction_270-happyReduction_270 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut76 happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_2 of { happy_var_2 -> - case happyOut77 happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn75- ((unLoc happy_var_1) (Just happy_var_2) (Just (rev happy_var_4)) [] (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}}--happyReduce_271 = happyMonadReduce 5# 47# happyReduction_271-happyReduction_271 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut76 happy_x_1 of { happy_var_1 -> - case happyOut77 happy_x_4 of { happy_var_4 -> - ( unclosed (happy_var_1 <--> rev happy_var_4) "{")}}- ) (\r -> happyReturn (happyIn75 r))--happyReduce_272 = happyReduce 6# 47# happyReduction_272-happyReduction_272 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut76 happy_x_1 of { happy_var_1 -> - case happyOut137 happy_x_2 of { happy_var_2 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - case happyOut77 happy_x_5 of { happy_var_5 -> - case happyOutTok happy_x_6 of { happy_var_6 -> - happyIn75- ((unLoc happy_var_1) (Just happy_var_3) (Just (rev happy_var_5)) happy_var_2 (happy_var_1 `srcspan` happy_var_6)- ) `HappyStk` happyRest}}}}}--happyReduce_273 = happyReduce 5# 47# happyReduction_273-happyReduction_273 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut76 happy_x_1 of { happy_var_1 -> - case happyOut137 happy_x_2 of { happy_var_2 -> - case happyOut77 happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn75- ((unLoc happy_var_1) Nothing (Just (rev happy_var_4)) happy_var_2 (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}}--happyReduce_274 = happyMonadReduce 6# 47# happyReduction_274-happyReduction_274 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut76 happy_x_1 of { happy_var_1 -> - case happyOut77 happy_x_5 of { happy_var_5 -> - ( unclosed (happy_var_1 <--> rev happy_var_5) "{")}}- ) (\r -> happyReturn (happyIn75 r))--happyReduce_275 = happySpecReduce_1 48# happyReduction_275-happyReduction_275 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn76- (L (locOf happy_var_1) TSstruct- )}--happyReduce_276 = happySpecReduce_1 48# happyReduction_276-happyReduction_276 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn76- (L (locOf happy_var_1) TSunion- )}--happyReduce_277 = happySpecReduce_1 49# happyReduction_277-happyReduction_277 happy_x_1- = case happyOut78 happy_x_1 of { happy_var_1 -> - happyIn77- (rsingleton happy_var_1- )}--happyReduce_278 = happySpecReduce_1 49# happyReduction_278-happyReduction_278 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn77- (rsingleton (AntiSdecls (getANTI_SDECLS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_279 = happySpecReduce_2 49# happyReduction_279-happyReduction_279 happy_x_2- happy_x_1- = case happyOut77 happy_x_1 of { happy_var_1 -> - case happyOut78 happy_x_2 of { happy_var_2 -> - happyIn77- (rcons happy_var_2 happy_var_1- )}}--happyReduce_280 = happySpecReduce_2 49# happyReduction_280-happyReduction_280 happy_x_2- happy_x_1- = case happyOut77 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn77- (rcons (AntiSdecls (getANTI_SDECLS happy_var_2) (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_281 = happySpecReduce_3 50# happyReduction_281-happyReduction_281 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut81 happy_x_2 of { happy_var_2 -> - case happyOut32 happy_x_3 of { happy_var_3 -> - happyIn78- (let dspec = AntiDeclSpec (getANTI_SPEC happy_var_1) (srclocOf happy_var_1)- in- FieldGroup dspec (map ($ Nothing) (rev happy_var_2)) (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_282 = happyMonadReduce 2# 50# happyReduction_282-happyReduction_282 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut79 happy_x_1 of { happy_var_1 -> - case happyOut32 happy_x_2 of { happy_var_2 -> - ( do{ dspec <- mkDeclSpec happy_var_1- ; gcc <- useGccExts- ; c11 <- useC11Exts- ; when (not gcc && not c11) $- expectedAt happy_var_2 ["declarator"] Nothing- ; checkAnonymousStructOrUnion happy_var_2 dspec- ; return $ FieldGroup dspec [] (happy_var_1 `srcspan` happy_var_2)- })}}- ) (\r -> happyReturn (happyIn78 r))--happyReduce_283 = happyMonadReduce 3# 50# happyReduction_283-happyReduction_283 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut79 happy_x_1 of { happy_var_1 -> - case happyOut81 happy_x_2 of { happy_var_2 -> - case happyOut32 happy_x_3 of { happy_var_3 -> - ( do{ dspec <- mkDeclSpec happy_var_1- ; return $ FieldGroup dspec (map ($ Nothing) (rev happy_var_2)) (happy_var_1 `srcspan` happy_var_3)- })}}}- ) (\r -> happyReturn (happyIn78 r))--happyReduce_284 = happyMonadReduce 3# 50# happyReduction_284-happyReduction_284 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut81 happy_x_2 of { happy_var_2 -> - case happyOut32 happy_x_3 of { happy_var_3 -> - ( do{ let v = getANTI_TYPE happy_var_1- ; let dspec = AntiTypeDeclSpec [] [] v (srclocOf happy_var_1)- ; let decl = AntiTypeDecl v (srclocOf happy_var_1)- ; return $ FieldGroup dspec (map ($ Just decl) (rev happy_var_2)) (happy_var_1 `srcspan` happy_var_3)- })}}}- ) (\r -> happyReturn (happyIn78 r))--happyReduce_285 = happySpecReduce_1 50# happyReduction_285-happyReduction_285 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn78- (AntiSdecl (getANTI_SDECL happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_286 = happySpecReduce_2 51# happyReduction_286-happyReduction_286 happy_x_2- happy_x_1- = case happyOut74 happy_x_1 of { happy_var_1 -> - case happyOut80 happy_x_2 of { happy_var_2 -> - happyIn79- (happy_var_1 : rev happy_var_2- )}}--happyReduce_287 = happySpecReduce_3 51# happyReduction_287-happyReduction_287 happy_x_3- happy_x_2- happy_x_1- = case happyOut97 happy_x_1 of { happy_var_1 -> - case happyOut74 happy_x_2 of { happy_var_2 -> - case happyOut80 happy_x_3 of { happy_var_3 -> - happyIn79- (rev happy_var_1 ++ [happy_var_2] ++ rev happy_var_3- )}}}--happyReduce_288 = happySpecReduce_1 51# happyReduction_288-happyReduction_288 happy_x_1- = case happyOut107 happy_x_1 of { happy_var_1 -> - happyIn79- ([happy_var_1]- )}--happyReduce_289 = happySpecReduce_2 51# happyReduction_289-happyReduction_289 happy_x_2- happy_x_1- = case happyOut107 happy_x_1 of { happy_var_1 -> - case happyOut97 happy_x_2 of { happy_var_2 -> - happyIn79- (happy_var_1 : rev happy_var_2- )}}--happyReduce_290 = happySpecReduce_2 51# happyReduction_290-happyReduction_290 happy_x_2- happy_x_1- = case happyOut97 happy_x_1 of { happy_var_1 -> - case happyOut107 happy_x_2 of { happy_var_2 -> - happyIn79- (rev happy_var_1 ++ [happy_var_2]- )}}--happyReduce_291 = happySpecReduce_3 51# happyReduction_291-happyReduction_291 happy_x_3- happy_x_2- happy_x_1- = case happyOut97 happy_x_1 of { happy_var_1 -> - case happyOut107 happy_x_2 of { happy_var_2 -> - case happyOut97 happy_x_3 of { happy_var_3 -> - happyIn79- (rev happy_var_1 ++ [happy_var_2] ++ rev happy_var_3- )}}}--happyReduce_292 = happySpecReduce_0 52# happyReduction_292-happyReduction_292 = happyIn80- (rnil- )--happyReduce_293 = happySpecReduce_2 52# happyReduction_293-happyReduction_293 happy_x_2- happy_x_1- = case happyOut80 happy_x_1 of { happy_var_1 -> - case happyOut74 happy_x_2 of { happy_var_2 -> - happyIn80- (rcons happy_var_2 happy_var_1- )}}--happyReduce_294 = happySpecReduce_2 52# happyReduction_294-happyReduction_294 happy_x_2- happy_x_1- = case happyOut80 happy_x_1 of { happy_var_1 -> - case happyOut86 happy_x_2 of { happy_var_2 -> - happyIn80- (rcons happy_var_2 happy_var_1- )}}--happyReduce_295 = happySpecReduce_2 52# happyReduction_295-happyReduction_295 happy_x_2- happy_x_1- = case happyOut80 happy_x_1 of { happy_var_1 -> - happyIn80- (happy_var_1- )}--happyReduce_296 = happySpecReduce_1 53# happyReduction_296-happyReduction_296 happy_x_1- = case happyOut82 happy_x_1 of { happy_var_1 -> - happyIn81- (rsingleton happy_var_1- )}--happyReduce_297 = happySpecReduce_3 53# happyReduction_297-happyReduction_297 happy_x_3- happy_x_2- happy_x_1- = case happyOut81 happy_x_1 of { happy_var_1 -> - case happyOut82 happy_x_3 of { happy_var_3 -> - happyIn81- (rcons happy_var_3 happy_var_1- )}}--happyReduce_298 = happySpecReduce_1 54# happyReduction_298-happyReduction_298 happy_x_1- = case happyOut91 happy_x_1 of { happy_var_1 -> - happyIn82- (\maybe_decl ->- let { (ident, declToDecl) = happy_var_1- ; decl = declToDecl (fromMaybe (declRoot ident) maybe_decl)- }- in- Field (Just ident) (Just decl) Nothing (srclocOf decl)- )}--happyReduce_299 = happySpecReduce_2 54# happyReduction_299-happyReduction_299 happy_x_2- happy_x_1- = case happyOut91 happy_x_1 of { happy_var_1 -> - happyIn82- (\maybe_decl ->- let { (ident, declToDecl) = happy_var_1- ; decl = declToDecl (fromMaybe (declRoot ident) maybe_decl)- }- in- Field (Just ident) (Just decl) Nothing (srclocOf decl)- )}--happyReduce_300 = happySpecReduce_2 54# happyReduction_300-happyReduction_300 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut55 happy_x_2 of { happy_var_2 -> - happyIn82- (\maybe_decl -> Field Nothing maybe_decl (Just happy_var_2) (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_301 = happySpecReduce_3 54# happyReduction_301-happyReduction_301 happy_x_3- happy_x_2- happy_x_1- = case happyOut91 happy_x_1 of { happy_var_1 -> - case happyOut55 happy_x_3 of { happy_var_3 -> - happyIn82- (\maybe_decl ->- let { (ident, declToDecl) = happy_var_1- ; decl = declToDecl (fromMaybe (declRoot ident) maybe_decl)- }- in- Field (Just ident) (Just decl) (Just happy_var_3) (srclocOf decl)- )}}--happyReduce_302 = happySpecReduce_2 55# happyReduction_302-happyReduction_302 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_2 of { happy_var_2 -> - happyIn83- (TSenum (Just happy_var_2) [] [] (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_303 = happySpecReduce_3 55# happyReduction_303-happyReduction_303 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut137 happy_x_2 of { happy_var_2 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - happyIn83- (TSenum (Just happy_var_3) [] happy_var_2 (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_304 = happyReduce 4# 55# happyReduction_304-happyReduction_304 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut84 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn83- (TSenum Nothing (rev happy_var_3) [] (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_305 = happyReduce 5# 55# happyReduction_305-happyReduction_305 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_2 of { happy_var_2 -> - case happyOut84 happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn83- (TSenum (Just happy_var_2) (rev happy_var_4) [] (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}}--happyReduce_306 = happySpecReduce_1 56# happyReduction_306-happyReduction_306 happy_x_1- = case happyOut85 happy_x_1 of { happy_var_1 -> - happyIn84- (rsingleton happy_var_1- )}--happyReduce_307 = happySpecReduce_1 56# happyReduction_307-happyReduction_307 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn84- (rsingleton (AntiEnums (getANTI_ENUMS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_308 = happySpecReduce_2 56# happyReduction_308-happyReduction_308 happy_x_2- happy_x_1- = case happyOut84 happy_x_1 of { happy_var_1 -> - happyIn84- (happy_var_1- )}--happyReduce_309 = happySpecReduce_3 56# happyReduction_309-happyReduction_309 happy_x_3- happy_x_2- happy_x_1- = case happyOut84 happy_x_1 of { happy_var_1 -> - case happyOut85 happy_x_3 of { happy_var_3 -> - happyIn84- (rcons happy_var_3 happy_var_1- )}}--happyReduce_310 = happySpecReduce_3 56# happyReduction_310-happyReduction_310 happy_x_3- happy_x_2- happy_x_1- = case happyOut84 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn84- (rcons (AntiEnums (getANTI_ENUMS happy_var_3) (srclocOf happy_var_3)) happy_var_1- )}}--happyReduce_311 = happySpecReduce_1 57# happyReduction_311-happyReduction_311 happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - happyIn85- (CEnum happy_var_1 Nothing (srclocOf happy_var_1)- )}--happyReduce_312 = happySpecReduce_3 57# happyReduction_312-happyReduction_312 happy_x_3- happy_x_2- happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - case happyOut55 happy_x_3 of { happy_var_3 -> - happyIn85- (CEnum happy_var_1 (Just happy_var_3) (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_313 = happySpecReduce_1 57# happyReduction_313-happyReduction_313 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn85- (AntiEnum (getANTI_ENUM happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_314 = happySpecReduce_1 58# happyReduction_314-happyReduction_314 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSconst (srclocOf happy_var_1)- )}--happyReduce_315 = happySpecReduce_1 58# happyReduction_315-happyReduction_315 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSvolatile (srclocOf happy_var_1)- )}--happyReduce_316 = happySpecReduce_1 58# happyReduction_316-happyReduction_316 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSinline (srclocOf happy_var_1)- )}--happyReduce_317 = happySpecReduce_1 58# happyReduction_317-happyReduction_317 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSrestrict (srclocOf happy_var_1)- )}--happyReduce_318 = happySpecReduce_1 58# happyReduction_318-happyReduction_318 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCUDAdevice (srclocOf happy_var_1)- )}--happyReduce_319 = happySpecReduce_1 58# happyReduction_319-happyReduction_319 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCUDAglobal (srclocOf happy_var_1)- )}--happyReduce_320 = happySpecReduce_1 58# happyReduction_320-happyReduction_320 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCUDAhost (srclocOf happy_var_1)- )}--happyReduce_321 = happySpecReduce_1 58# happyReduction_321-happyReduction_321 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCUDAconstant (srclocOf happy_var_1)- )}--happyReduce_322 = happySpecReduce_1 58# happyReduction_322-happyReduction_322 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCUDAshared (srclocOf happy_var_1)- )}--happyReduce_323 = happySpecReduce_1 58# happyReduction_323-happyReduction_323 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCUDArestrict (srclocOf happy_var_1)- )}--happyReduce_324 = happySpecReduce_1 58# happyReduction_324-happyReduction_324 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCUDAnoinline (srclocOf happy_var_1)- )}--happyReduce_325 = happySpecReduce_1 58# happyReduction_325-happyReduction_325 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLprivate (srclocOf happy_var_1)- )}--happyReduce_326 = happySpecReduce_1 58# happyReduction_326-happyReduction_326 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLprivate (srclocOf happy_var_1)- )}--happyReduce_327 = happySpecReduce_1 58# happyReduction_327-happyReduction_327 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLlocal (srclocOf happy_var_1)- )}--happyReduce_328 = happySpecReduce_1 58# happyReduction_328-happyReduction_328 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLlocal (srclocOf happy_var_1)- )}--happyReduce_329 = happySpecReduce_1 58# happyReduction_329-happyReduction_329 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLglobal (srclocOf happy_var_1)- )}--happyReduce_330 = happySpecReduce_1 58# happyReduction_330-happyReduction_330 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLglobal (srclocOf happy_var_1)- )}--happyReduce_331 = happySpecReduce_1 58# happyReduction_331-happyReduction_331 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLconstant (srclocOf happy_var_1)- )}--happyReduce_332 = happySpecReduce_1 58# happyReduction_332-happyReduction_332 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLconstant (srclocOf happy_var_1)- )}--happyReduce_333 = happySpecReduce_1 58# happyReduction_333-happyReduction_333 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLreadonly (srclocOf happy_var_1)- )}--happyReduce_334 = happySpecReduce_1 58# happyReduction_334-happyReduction_334 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLreadonly (srclocOf happy_var_1)- )}--happyReduce_335 = happySpecReduce_1 58# happyReduction_335-happyReduction_335 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLwriteonly (srclocOf happy_var_1)- )}--happyReduce_336 = happySpecReduce_1 58# happyReduction_336-happyReduction_336 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLwriteonly (srclocOf happy_var_1)- )}--happyReduce_337 = happySpecReduce_1 58# happyReduction_337-happyReduction_337 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLkernel (srclocOf happy_var_1)- )}--happyReduce_338 = happySpecReduce_1 58# happyReduction_338-happyReduction_338 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn86- (TSCLkernel (srclocOf happy_var_1)- )}--happyReduce_339 = happySpecReduce_1 59# happyReduction_339-happyReduction_339 happy_x_1- = case happyOut88 happy_x_1 of { happy_var_1 -> - happyIn87- (happy_var_1- )}--happyReduce_340 = happySpecReduce_2 59# happyReduction_340-happyReduction_340 happy_x_2- happy_x_1- = case happyOut96 happy_x_1 of { happy_var_1 -> - case happyOut88 happy_x_2 of { happy_var_2 -> - happyIn87- (let (ident, dirDecl) = happy_var_2- in- (ident, dirDecl . happy_var_1)- )}}--happyReduce_341 = happySpecReduce_1 60# happyReduction_341-happyReduction_341 happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - happyIn88- ((happy_var_1, id)- )}--happyReduce_342 = happySpecReduce_3 60# happyReduction_342-happyReduction_342 happy_x_3- happy_x_2- happy_x_1- = case happyOut87 happy_x_2 of { happy_var_2 -> - happyIn88- (happy_var_2- )}--happyReduce_343 = happyMonadReduce 3# 60# happyReduction_343-happyReduction_343 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut87 happy_x_2 of { happy_var_2 -> - (do { let (ident, declToDecl) = happy_var_2- ; let decl = declToDecl (declRoot ident)- ; unclosed (happy_var_1 <--> decl) "("- })}}- ) (\r -> happyReturn (happyIn88 r))--happyReduce_344 = happySpecReduce_2 60# happyReduction_344-happyReduction_344 happy_x_2- happy_x_1- = case happyOut88 happy_x_1 of { happy_var_1 -> - case happyOut95 happy_x_2 of { happy_var_2 -> - happyIn88- (let (ident, declToDecl) = happy_var_1- in- (ident, declToDecl . happy_var_2)- )}}--happyReduce_345 = happySpecReduce_3 60# happyReduction_345-happyReduction_345 happy_x_3- happy_x_2- happy_x_1- = case happyOut88 happy_x_1 of { happy_var_1 -> - happyIn88- (let { (ident, declToDecl) = happy_var_1- ; proto = mkOldProto []- }- in- (ident, declToDecl . proto)- )}--happyReduce_346 = happyReduce 4# 60# happyReduction_346-happyReduction_346 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut88 happy_x_1 of { happy_var_1 -> - case happyOut98 happy_x_3 of { happy_var_3 -> - happyIn88- (let { (ident, declToDecl) = happy_var_1- ; proto = mkProto happy_var_3- }- in- (ident, declToDecl . proto)- ) `HappyStk` happyRest}}--happyReduce_347 = happyReduce 4# 60# happyReduction_347-happyReduction_347 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut88 happy_x_1 of { happy_var_1 -> - case happyOut103 happy_x_3 of { happy_var_3 -> - happyIn88- (let { (ident, declToDecl) = happy_var_1- ; proto = mkOldProto (rev happy_var_3)- }- in- (ident, declToDecl . proto)- ) `HappyStk` happyRest}}--happyReduce_348 = happySpecReduce_1 61# happyReduction_348-happyReduction_348 happy_x_1- = case happyOut90 happy_x_1 of { happy_var_1 -> - happyIn89- (happy_var_1- )}--happyReduce_349 = happySpecReduce_2 61# happyReduction_349-happyReduction_349 happy_x_2- happy_x_1- = case happyOut96 happy_x_1 of { happy_var_1 -> - case happyOut90 happy_x_2 of { happy_var_2 -> - happyIn89- (let (ident, dirDecl) = happy_var_2- in- (ident, dirDecl . happy_var_1)- )}}--happyReduce_350 = happySpecReduce_1 62# happyReduction_350-happyReduction_350 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn90- ((Id (getNAMED happy_var_1) (srclocOf happy_var_1), id)- )}--happyReduce_351 = happySpecReduce_3 62# happyReduction_351-happyReduction_351 happy_x_3- happy_x_2- happy_x_1- = case happyOut89 happy_x_2 of { happy_var_2 -> - happyIn90- (happy_var_2- )}--happyReduce_352 = happyMonadReduce 3# 62# happyReduction_352-happyReduction_352 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut89 happy_x_2 of { happy_var_2 -> - (do { let (ident, declToDecl) = happy_var_2- ; let decl = declToDecl (declRoot ident)- ; unclosed (happy_var_1 <--> decl) "("- })}}- ) (\r -> happyReturn (happyIn90 r))--happyReduce_353 = happySpecReduce_2 62# happyReduction_353-happyReduction_353 happy_x_2- happy_x_1- = case happyOut90 happy_x_1 of { happy_var_1 -> - case happyOut95 happy_x_2 of { happy_var_2 -> - happyIn90- (let (ident, declToDecl) = happy_var_1- in- (ident, declToDecl . happy_var_2)- )}}--happyReduce_354 = happySpecReduce_3 62# happyReduction_354-happyReduction_354 happy_x_3- happy_x_2- happy_x_1- = case happyOut90 happy_x_1 of { happy_var_1 -> - happyIn90- (let { (ident, declToDecl) = happy_var_1- ; proto = mkOldProto []- }- in- (ident, declToDecl . proto)- )}--happyReduce_355 = happyReduce 4# 62# happyReduction_355-happyReduction_355 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut90 happy_x_1 of { happy_var_1 -> - case happyOut98 happy_x_3 of { happy_var_3 -> - happyIn90- (let { (ident, declToDecl) = happy_var_1- ; proto = mkProto happy_var_3- }- in- (ident, declToDecl . proto)- ) `HappyStk` happyRest}}--happyReduce_356 = happyReduce 4# 62# happyReduction_356-happyReduction_356 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut90 happy_x_1 of { happy_var_1 -> - case happyOut103 happy_x_3 of { happy_var_3 -> - happyIn90- (let { (ident, declToDecl) = happy_var_1- ; proto = mkOldProto (rev happy_var_3)- }- in- (ident, declToDecl . proto)- ) `HappyStk` happyRest}}--happyReduce_357 = happySpecReduce_1 62# happyReduction_357-happyReduction_357 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn90- ((Id (getOBJCNAMED happy_var_1) (srclocOf happy_var_1), id)- )}--happyReduce_358 = happySpecReduce_1 63# happyReduction_358-happyReduction_358 happy_x_1- = case happyOut87 happy_x_1 of { happy_var_1 -> - happyIn91- (happy_var_1- )}--happyReduce_359 = happySpecReduce_1 63# happyReduction_359-happyReduction_359 happy_x_1- = case happyOut89 happy_x_1 of { happy_var_1 -> - happyIn91- (happy_var_1- )}--happyReduce_360 = happySpecReduce_1 64# happyReduction_360-happyReduction_360 happy_x_1- = case happyOut93 happy_x_1 of { happy_var_1 -> - happyIn92- (happy_var_1- )}--happyReduce_361 = happySpecReduce_2 64# happyReduction_361-happyReduction_361 happy_x_2- happy_x_1- = case happyOut96 happy_x_1 of { happy_var_1 -> - case happyOut93 happy_x_2 of { happy_var_2 -> - happyIn92- (let (ident, dirDecl) = happy_var_2- in- (ident, dirDecl . happy_var_1)- )}}--happyReduce_362 = happySpecReduce_1 65# happyReduction_362-happyReduction_362 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn93- ((Id (getNAMED happy_var_1) (srclocOf happy_var_1), id)- )}--happyReduce_363 = happyReduce 4# 65# happyReduction_363-happyReduction_363 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut96 happy_x_2 of { happy_var_2 -> - case happyOut93 happy_x_3 of { happy_var_3 -> - happyIn93- (let (ident, dirDecl) = happy_var_3- in- (ident, dirDecl . happy_var_2)- ) `HappyStk` happyRest}}--happyReduce_364 = happySpecReduce_2 65# happyReduction_364-happyReduction_364 happy_x_2- happy_x_1- = case happyOut93 happy_x_1 of { happy_var_1 -> - case happyOut95 happy_x_2 of { happy_var_2 -> - happyIn93- (let (ident, declToDecl) = happy_var_1- in- (ident, declToDecl . happy_var_2)- )}}--happyReduce_365 = happySpecReduce_3 65# happyReduction_365-happyReduction_365 happy_x_3- happy_x_2- happy_x_1- = case happyOut93 happy_x_1 of { happy_var_1 -> - happyIn93- (let { (ident, declToDecl) = happy_var_1- ; proto = mkOldProto []- }- in- (ident, declToDecl . proto)- )}--happyReduce_366 = happyReduce 4# 65# happyReduction_366-happyReduction_366 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut93 happy_x_1 of { happy_var_1 -> - case happyOut98 happy_x_3 of { happy_var_3 -> - happyIn93- (let { (ident, declToDecl) = happy_var_1- ; proto = mkProto happy_var_3- }- in- (ident, declToDecl . proto)- ) `HappyStk` happyRest}}--happyReduce_367 = happyReduce 4# 65# happyReduction_367-happyReduction_367 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut93 happy_x_1 of { happy_var_1 -> - case happyOut103 happy_x_3 of { happy_var_3 -> - happyIn93- (let { (ident, declToDecl) = happy_var_1- ; proto = mkOldProto (rev happy_var_3)- }- in- (ident, declToDecl . proto)- ) `HappyStk` happyRest}}--happyReduce_368 = happySpecReduce_1 65# happyReduction_368-happyReduction_368 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn93- ((Id (getOBJCNAMED happy_var_1) (srclocOf happy_var_1), id)- )}--happyReduce_369 = happySpecReduce_1 66# happyReduction_369-happyReduction_369 happy_x_1- = case happyOut87 happy_x_1 of { happy_var_1 -> - happyIn94- (happy_var_1- )}--happyReduce_370 = happySpecReduce_1 66# happyReduction_370-happyReduction_370 happy_x_1- = case happyOut92 happy_x_1 of { happy_var_1 -> - happyIn94- (happy_var_1- )}--happyReduce_371 = happySpecReduce_2 67# happyReduction_371-happyReduction_371 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn95- (mkArray [] (NoArraySize (happy_var_1 `srcspan` happy_var_2))- )}}--happyReduce_372 = happyMonadReduce 2# 67# happyReduction_372-happyReduction_372 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - ( unclosed (locOf happy_var_1) "[")}- ) (\r -> happyReturn (happyIn95 r))--happyReduce_373 = happySpecReduce_3 67# happyReduction_373-happyReduction_373 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut97 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn95- (mkArray (rev happy_var_2) (NoArraySize (happy_var_1 `srcspan` happy_var_3))- )}}}--happyReduce_374 = happySpecReduce_3 67# happyReduction_374-happyReduction_374 happy_x_3- happy_x_2- happy_x_1- = case happyOut52 happy_x_2 of { happy_var_2 -> - happyIn95- (mkArray [] (ArraySize False happy_var_2 (srclocOf happy_var_2))- )}--happyReduce_375 = happyReduce 4# 67# happyReduction_375-happyReduction_375 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut97 happy_x_2 of { happy_var_2 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn95- (mkArray (rev happy_var_2) (ArraySize False happy_var_3 (srclocOf happy_var_3))- ) `HappyStk` happyRest}}--happyReduce_376 = happyReduce 4# 67# happyReduction_376-happyReduction_376 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn95- (mkArray [] (ArraySize True happy_var_3 (srclocOf happy_var_3))- ) `HappyStk` happyRest}--happyReduce_377 = happyReduce 5# 67# happyReduction_377-happyReduction_377 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut97 happy_x_3 of { happy_var_3 -> - case happyOut52 happy_x_4 of { happy_var_4 -> - happyIn95- (mkArray (rev happy_var_3) (ArraySize True happy_var_4 (srclocOf happy_var_4))- ) `HappyStk` happyRest}}--happyReduce_378 = happyReduce 5# 67# happyReduction_378-happyReduction_378 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut97 happy_x_2 of { happy_var_2 -> - case happyOut52 happy_x_4 of { happy_var_4 -> - happyIn95- (mkArray (rev happy_var_2) (ArraySize True happy_var_4 (srclocOf happy_var_4))- ) `HappyStk` happyRest}}--happyReduce_379 = happySpecReduce_3 67# happyReduction_379-happyReduction_379 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn95- (mkArray [] (VariableArraySize (happy_var_1 `srcspan` happy_var_3))- )}}--happyReduce_380 = happyReduce 4# 67# happyReduction_380-happyReduction_380 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut97 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn95- (mkArray (rev happy_var_2) (VariableArraySize (happy_var_1 `srcspan` happy_var_4))- ) `HappyStk` happyRest}}}--happyReduce_381 = happySpecReduce_1 68# happyReduction_381-happyReduction_381 happy_x_1- = happyIn96- (mkPtr []- )--happyReduce_382 = happySpecReduce_2 68# happyReduction_382-happyReduction_382 happy_x_2- happy_x_1- = case happyOut97 happy_x_2 of { happy_var_2 -> - happyIn96- (mkPtr (rev happy_var_2)- )}--happyReduce_383 = happySpecReduce_2 68# happyReduction_383-happyReduction_383 happy_x_2- happy_x_1- = case happyOut96 happy_x_2 of { happy_var_2 -> - happyIn96- (happy_var_2 . mkPtr []- )}--happyReduce_384 = happySpecReduce_3 68# happyReduction_384-happyReduction_384 happy_x_3- happy_x_2- happy_x_1- = case happyOut97 happy_x_2 of { happy_var_2 -> - case happyOut96 happy_x_3 of { happy_var_3 -> - happyIn96- (happy_var_3 . mkPtr (rev happy_var_2)- )}}--happyReduce_385 = happyMonadReduce 1# 68# happyReduction_385-happyReduction_385 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - ( mkBlockPtr (locOf happy_var_1) [])}- ) (\r -> happyReturn (happyIn96 r))--happyReduce_386 = happyMonadReduce 2# 68# happyReduction_386-happyReduction_386 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut97 happy_x_2 of { happy_var_2 -> - ( mkBlockPtr (locOf happy_var_1) (rev happy_var_2))}}- ) (\r -> happyReturn (happyIn96 r))--happyReduce_387 = happyMonadReduce 2# 68# happyReduction_387-happyReduction_387 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut96 happy_x_2 of { happy_var_2 -> - ( (happy_var_2 .) `liftM` mkBlockPtr (locOf happy_var_1) [])}}- ) (\r -> happyReturn (happyIn96 r))--happyReduce_388 = happyMonadReduce 3# 68# happyReduction_388-happyReduction_388 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut97 happy_x_2 of { happy_var_2 -> - case happyOut96 happy_x_3 of { happy_var_3 -> - ( (happy_var_3 .) `liftM` mkBlockPtr (locOf happy_var_1) (rev happy_var_2))}}}- ) (\r -> happyReturn (happyIn96 r))--happyReduce_389 = happySpecReduce_1 69# happyReduction_389-happyReduction_389 happy_x_1- = case happyOut86 happy_x_1 of { happy_var_1 -> - happyIn97- (rsingleton happy_var_1- )}--happyReduce_390 = happySpecReduce_2 69# happyReduction_390-happyReduction_390 happy_x_2- happy_x_1- = case happyOut97 happy_x_1 of { happy_var_1 -> - case happyOut86 happy_x_2 of { happy_var_2 -> - happyIn97- (rcons happy_var_2 happy_var_1- )}}--happyReduce_391 = happySpecReduce_1 70# happyReduction_391-happyReduction_391 happy_x_1- = case happyOut100 happy_x_1 of { happy_var_1 -> - happyIn98- (let params = rev happy_var_1- in- Params params False (srclocOf params)- )}--happyReduce_392 = happySpecReduce_3 70# happyReduction_392-happyReduction_392 happy_x_3- happy_x_2- happy_x_1- = case happyOut100 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn98- (let params = rev happy_var_1- in- Params params True (params `srcspan` happy_var_3)- )}}--happyReduce_393 = happySpecReduce_1 71# happyReduction_393-happyReduction_393 happy_x_1- = case happyOut100 happy_x_1 of { happy_var_1 -> - happyIn99- (rev happy_var_1- )}--happyReduce_394 = happySpecReduce_1 72# happyReduction_394-happyReduction_394 happy_x_1- = case happyOut101 happy_x_1 of { happy_var_1 -> - happyIn100- (rsingleton happy_var_1- )}--happyReduce_395 = happySpecReduce_1 72# happyReduction_395-happyReduction_395 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn100- (rsingleton (AntiParams (getANTI_PARAMS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_396 = happySpecReduce_3 72# happyReduction_396-happyReduction_396 happy_x_3- happy_x_2- happy_x_1- = case happyOut100 happy_x_1 of { happy_var_1 -> - case happyOut101 happy_x_3 of { happy_var_3 -> - happyIn100- (rcons happy_var_3 happy_var_1- )}}--happyReduce_397 = happySpecReduce_3 72# happyReduction_397-happyReduction_397 happy_x_3- happy_x_2- happy_x_1- = case happyOut100 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn100- (rcons (AntiParams (getANTI_PARAMS happy_var_3) (srclocOf happy_var_3)) happy_var_1- )}}--happyReduce_398 = happySpecReduce_1 73# happyReduction_398-happyReduction_398 happy_x_1- = case happyOut60 happy_x_1 of { happy_var_1 -> - happyIn101- (let (dspec, decl) = happy_var_1- in- Param Nothing dspec decl (dspec `srcspan` decl)- )}--happyReduce_399 = happySpecReduce_2 73# happyReduction_399-happyReduction_399 happy_x_2- happy_x_1- = case happyOut60 happy_x_1 of { happy_var_1 -> - case happyOut94 happy_x_2 of { happy_var_2 -> - happyIn101- (let { (dspec, declRoot) = happy_var_1- ; (ident, declToDecl) = happy_var_2- ; decl = declToDecl declRoot- }- in- Param (Just ident) dspec decl (ident `srcspan` decl)- )}}--happyReduce_400 = happySpecReduce_2 73# happyReduction_400-happyReduction_400 happy_x_2- happy_x_1- = case happyOut60 happy_x_1 of { happy_var_1 -> - case happyOut105 happy_x_2 of { happy_var_2 -> - happyIn101- (let { (dspec, declRoot) = happy_var_1- ; decl = happy_var_2 declRoot- }- in- Param Nothing dspec decl (dspec `srcspan` decl)- )}}--happyReduce_401 = happySpecReduce_1 73# happyReduction_401-happyReduction_401 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn101- (AntiParam (getANTI_PARAM happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_402 = happySpecReduce_1 74# happyReduction_402-happyReduction_402 happy_x_1- = case happyOut60 happy_x_1 of { happy_var_1 -> - happyIn102- (let (dspec, decl) = happy_var_1- in- Type dspec decl (dspec `srcspan` decl)- )}--happyReduce_403 = happySpecReduce_2 74# happyReduction_403-happyReduction_403 happy_x_2- happy_x_1- = case happyOut60 happy_x_1 of { happy_var_1 -> - case happyOut94 happy_x_2 of { happy_var_2 -> - happyIn102- (let { (dspec, declRoot) = happy_var_1- ; (ident, declToDecl) = happy_var_2- ; decl = declToDecl declRoot- }- in- Type dspec decl (dspec `srcspan` decl)- )}}--happyReduce_404 = happySpecReduce_2 74# happyReduction_404-happyReduction_404 happy_x_2- happy_x_1- = case happyOut60 happy_x_1 of { happy_var_1 -> - case happyOut105 happy_x_2 of { happy_var_2 -> - happyIn102- (let { (dspec, declRoot) = happy_var_1- ; decl = happy_var_2 declRoot- }- in- Type dspec decl (dspec `srcspan` decl)- )}}--happyReduce_405 = happySpecReduce_1 75# happyReduction_405-happyReduction_405 happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - happyIn103- (rsingleton happy_var_1- )}--happyReduce_406 = happySpecReduce_3 75# happyReduction_406-happyReduction_406 happy_x_3- happy_x_2- happy_x_1- = case happyOut103 happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_3 of { happy_var_3 -> - happyIn103- (rcons happy_var_3 happy_var_1- )}}--happyReduce_407 = happySpecReduce_1 76# happyReduction_407-happyReduction_407 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn104- (let dspec = AntiDeclSpec (getANTI_SPEC happy_var_1) (srclocOf happy_var_1)- in- Type dspec (declRoot happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_408 = happyMonadReduce 1# 76# happyReduction_408-happyReduction_408 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut79 happy_x_1 of { happy_var_1 -> - ( do{ dspec <- mkDeclSpec happy_var_1- ; return $ Type dspec (declRoot happy_var_1) (srclocOf happy_var_1)- })}- ) (\r -> happyReturn (happyIn104 r))--happyReduce_409 = happySpecReduce_2 76# happyReduction_409-happyReduction_409 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut105 happy_x_2 of { happy_var_2 -> - happyIn104- (let { dspec = AntiDeclSpec (getANTI_SPEC happy_var_1) (srclocOf happy_var_1)- ; decl = happy_var_2 (declRoot happy_var_1)- }- in- Type dspec decl (dspec `srcspan` decl)- )}}--happyReduce_410 = happyMonadReduce 2# 76# happyReduction_410-happyReduction_410 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut79 happy_x_1 of { happy_var_1 -> - case happyOut105 happy_x_2 of { happy_var_2 -> - ( do{ let decl = happy_var_2 (declRoot happy_var_1)- ; dspec <- mkDeclSpec happy_var_1- ; return $ Type dspec decl (dspec `srcspan` decl)- })}}- ) (\r -> happyReturn (happyIn104 r))--happyReduce_411 = happySpecReduce_1 76# happyReduction_411-happyReduction_411 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn104- (AntiType (getANTI_TYPE happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_412 = happySpecReduce_2 76# happyReduction_412-happyReduction_412 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut105 happy_x_2 of { happy_var_2 -> - happyIn104- (let { v = getANTI_TYPE happy_var_1- ; decl = happy_var_2 (AntiTypeDecl v (srclocOf happy_var_1))- }- in- Type (AntiTypeDeclSpec [] [] v (srclocOf happy_var_1)) decl (happy_var_1 `srcspan` decl)- )}}--happyReduce_413 = happySpecReduce_1 77# happyReduction_413-happyReduction_413 happy_x_1- = case happyOut96 happy_x_1 of { happy_var_1 -> - happyIn105- (happy_var_1- )}--happyReduce_414 = happySpecReduce_1 77# happyReduction_414-happyReduction_414 happy_x_1- = case happyOut106 happy_x_1 of { happy_var_1 -> - happyIn105- (happy_var_1- )}--happyReduce_415 = happySpecReduce_2 77# happyReduction_415-happyReduction_415 happy_x_2- happy_x_1- = case happyOut96 happy_x_1 of { happy_var_1 -> - case happyOut106 happy_x_2 of { happy_var_2 -> - happyIn105- (happy_var_2 . happy_var_1- )}}--happyReduce_416 = happySpecReduce_3 78# happyReduction_416-happyReduction_416 happy_x_3- happy_x_2- happy_x_1- = case happyOut105 happy_x_2 of { happy_var_2 -> - happyIn106- (happy_var_2- )}--happyReduce_417 = happyMonadReduce 3# 78# happyReduction_417-happyReduction_417 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut105 happy_x_2 of { happy_var_2 -> - ( do{ let decl = happy_var_2 (declRoot happy_var_1)- ; unclosed (happy_var_1 <--> decl) "("- })}}- ) (\r -> happyReturn (happyIn106 r))--happyReduce_418 = happySpecReduce_1 78# happyReduction_418-happyReduction_418 happy_x_1- = case happyOut95 happy_x_1 of { happy_var_1 -> - happyIn106- (happy_var_1- )}--happyReduce_419 = happySpecReduce_2 78# happyReduction_419-happyReduction_419 happy_x_2- happy_x_1- = case happyOut106 happy_x_1 of { happy_var_1 -> - case happyOut95 happy_x_2 of { happy_var_2 -> - happyIn106- (happy_var_1 . happy_var_2- )}}--happyReduce_420 = happySpecReduce_2 78# happyReduction_420-happyReduction_420 happy_x_2- happy_x_1- = happyIn106- (mkOldProto []- )--happyReduce_421 = happySpecReduce_3 78# happyReduction_421-happyReduction_421 happy_x_3- happy_x_2- happy_x_1- = case happyOut98 happy_x_2 of { happy_var_2 -> - happyIn106- (mkProto happy_var_2- )}--happyReduce_422 = happySpecReduce_3 78# happyReduction_422-happyReduction_422 happy_x_3- happy_x_2- happy_x_1- = case happyOut106 happy_x_1 of { happy_var_1 -> - happyIn106- (happy_var_1 . mkOldProto []- )}--happyReduce_423 = happyReduce 4# 78# happyReduction_423-happyReduction_423 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut106 happy_x_1 of { happy_var_1 -> - case happyOut98 happy_x_3 of { happy_var_3 -> - happyIn106- (happy_var_1 . mkProto happy_var_3- ) `HappyStk` happyRest}}--happyReduce_424 = happySpecReduce_1 79# happyReduction_424-happyReduction_424 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn107- (TSnamed (Id (getNAMED happy_var_1) (srclocOf happy_var_1)) [] (srclocOf happy_var_1)- )}--happyReduce_425 = happyMonadReduce 4# 79# happyReduction_425-happyReduction_425 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut103 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - ( do { assertObjCEnabled (happy_var_1 <--> happy_var_4) "To use protocol qualifiers, enable support for Objective-C"- ; return $ TSnamed (Id (getNAMED happy_var_1) (srclocOf happy_var_1)) (rev happy_var_3) (happy_var_1 `srcspan` happy_var_4)- })}}}- ) (\r -> happyReturn (happyIn107 r))--happyReduce_426 = happySpecReduce_2 79# happyReduction_426-happyReduction_426 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_2 of { happy_var_2 -> - happyIn107- (TSnamed happy_var_2 [] (srclocOf happy_var_1)- )}}--happyReduce_427 = happyMonadReduce 5# 79# happyReduction_427-happyReduction_427 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_2 of { happy_var_2 -> - case happyOut103 happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - ( do { assertObjCEnabled (happy_var_1 <--> happy_var_5) "To use protocol qualifiers, enable support for Objective-C"- ; return $ TSnamed happy_var_2 (rev happy_var_4) (happy_var_1 `srcspan` happy_var_5)- })}}}}- ) (\r -> happyReturn (happyIn107 r))--happyReduce_428 = happyMonadReduce 2# 79# happyReduction_428-happyReduction_428 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["identifier"] (Just "'typename'"))- ) (\r -> happyReturn (happyIn107 r))--happyReduce_429 = happyReduce 4# 79# happyReduction_429-happyReduction_429 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut39 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn107- (TStypeofExp happy_var_3 (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_430 = happyReduce 4# 79# happyReduction_430-happyReduction_430 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut104 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn107- (TStypeofType happy_var_3 (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_431 = happyMonadReduce 4# 79# happyReduction_431-happyReduction_431 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut104 happy_x_3 of { happy_var_3 -> - ( unclosed (happy_var_2 <--> happy_var_3) "(")}}- ) (\r -> happyReturn (happyIn107 r))--happyReduce_432 = happySpecReduce_1 79# happyReduction_432-happyReduction_432 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn107- (TSnamed (Id (getOBJCNAMED happy_var_1) (srclocOf happy_var_1)) [] (srclocOf happy_var_1)- )}--happyReduce_433 = happyMonadReduce 4# 79# happyReduction_433-happyReduction_433 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut103 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - ( do { assertObjCEnabled (happy_var_1 <--> happy_var_4) "To use protocol qualifiers, enable support for Objective-C"- ; return $ TSnamed (Id (getOBJCNAMED happy_var_1) (srclocOf happy_var_1)) (rev happy_var_3) (happy_var_1 `srcspan` happy_var_4)- })}}}- ) (\r -> happyReturn (happyIn107 r))--happyReduce_434 = happySpecReduce_1 80# happyReduction_434-happyReduction_434 happy_x_1- = case happyOut52 happy_x_1 of { happy_var_1 -> - happyIn108- (ExpInitializer happy_var_1 (srclocOf happy_var_1)- )}--happyReduce_435 = happySpecReduce_3 80# happyReduction_435-happyReduction_435 happy_x_3- happy_x_2- happy_x_1- = case happyOut31 happy_x_1 of { happy_var_1 -> - case happyOut109 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn108- (CompoundInitializer (rev happy_var_2) (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_436 = happyMonadReduce 3# 80# happyReduction_436-happyReduction_436 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut31 happy_x_1 of { happy_var_1 -> - case happyOut109 happy_x_2 of { happy_var_2 -> - ( do{ let (_, inits) = unzip (rev happy_var_2)- ; unclosed (happy_var_1 <--> inits) "{"- })}}- ) (\r -> happyReturn (happyIn108 r))--happyReduce_437 = happyReduce 4# 80# happyReduction_437-happyReduction_437 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut31 happy_x_1 of { happy_var_1 -> - case happyOut109 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn108- (CompoundInitializer (rev happy_var_2) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_438 = happyMonadReduce 4# 80# happyReduction_438-happyReduction_438 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut31 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - ( unclosed (happy_var_1 <--> happy_var_3) "{")}}- ) (\r -> happyReturn (happyIn108 r))--happyReduce_439 = happySpecReduce_1 80# happyReduction_439-happyReduction_439 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn108- (AntiInit (getANTI_INIT happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_440 = happySpecReduce_1 81# happyReduction_440-happyReduction_440 happy_x_1- = case happyOut108 happy_x_1 of { happy_var_1 -> - happyIn109- (rsingleton (Nothing, happy_var_1)- )}--happyReduce_441 = happySpecReduce_1 81# happyReduction_441-happyReduction_441 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn109- (rsingleton (Nothing, AntiInits (getANTI_INITS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_442 = happySpecReduce_2 81# happyReduction_442-happyReduction_442 happy_x_2- happy_x_1- = case happyOut110 happy_x_1 of { happy_var_1 -> - case happyOut108 happy_x_2 of { happy_var_2 -> - happyIn109- (rsingleton (Just happy_var_1, happy_var_2)- )}}--happyReduce_443 = happySpecReduce_3 81# happyReduction_443-happyReduction_443 happy_x_3- happy_x_2- happy_x_1- = case happyOut109 happy_x_1 of { happy_var_1 -> - case happyOut108 happy_x_3 of { happy_var_3 -> - happyIn109- (rcons (Nothing, happy_var_3) happy_var_1- )}}--happyReduce_444 = happyReduce 4# 81# happyReduction_444-happyReduction_444 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut109 happy_x_1 of { happy_var_1 -> - case happyOut110 happy_x_3 of { happy_var_3 -> - case happyOut108 happy_x_4 of { happy_var_4 -> - happyIn109- (rcons (Just happy_var_3, happy_var_4) happy_var_1- ) `HappyStk` happyRest}}}--happyReduce_445 = happySpecReduce_2 82# happyReduction_445-happyReduction_445 happy_x_2- happy_x_1- = case happyOut111 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn110- (let designators = rev happy_var_1- in- Designation designators (designators `srcspan` happy_var_2)- )}}--happyReduce_446 = happySpecReduce_1 83# happyReduction_446-happyReduction_446 happy_x_1- = case happyOut112 happy_x_1 of { happy_var_1 -> - happyIn111- (rsingleton happy_var_1- )}--happyReduce_447 = happySpecReduce_2 83# happyReduction_447-happyReduction_447 happy_x_2- happy_x_1- = case happyOut111 happy_x_1 of { happy_var_1 -> - case happyOut112 happy_x_2 of { happy_var_2 -> - happyIn111- (rcons happy_var_2 happy_var_1- )}}--happyReduce_448 = happySpecReduce_3 84# happyReduction_448-happyReduction_448 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut55 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn112- (IndexDesignator happy_var_2 (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_449 = happySpecReduce_2 84# happyReduction_449-happyReduction_449 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_2 of { happy_var_2 -> - happyIn112- (MemberDesignator happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_450 = happySpecReduce_1 85# happyReduction_450-happyReduction_450 happy_x_1- = case happyOut117 happy_x_1 of { happy_var_1 -> - happyIn113- (happy_var_1- )}--happyReduce_451 = happySpecReduce_1 85# happyReduction_451-happyReduction_451 happy_x_1- = case happyOut118 happy_x_1 of { happy_var_1 -> - happyIn113- (happy_var_1- )}--happyReduce_452 = happySpecReduce_1 85# happyReduction_452-happyReduction_452 happy_x_1- = case happyOut125 happy_x_1 of { happy_var_1 -> - happyIn113- (happy_var_1- )}--happyReduce_453 = happySpecReduce_1 85# happyReduction_453-happyReduction_453 happy_x_1- = case happyOut126 happy_x_1 of { happy_var_1 -> - happyIn113- (happy_var_1- )}--happyReduce_454 = happySpecReduce_1 85# happyReduction_454-happyReduction_454 happy_x_1- = case happyOut127 happy_x_1 of { happy_var_1 -> - happyIn113- (happy_var_1- )}--happyReduce_455 = happySpecReduce_1 85# happyReduction_455-happyReduction_455 happy_x_1- = case happyOut128 happy_x_1 of { happy_var_1 -> - happyIn113- (happy_var_1- )}--happyReduce_456 = happySpecReduce_1 85# happyReduction_456-happyReduction_456 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn113- (Pragma (getPRAGMA happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_457 = happySpecReduce_2 85# happyReduction_457-happyReduction_457 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut113 happy_x_2 of { happy_var_2 -> - happyIn113- (mkCommentStm happy_var_1 happy_var_2- )}}--happyReduce_458 = happySpecReduce_2 85# happyReduction_458-happyReduction_458 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut113 happy_x_2 of { happy_var_2 -> - happyIn113- (AntiComment (getANTI_COMMENT happy_var_1) happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_459 = happyMonadReduce 2# 85# happyReduction_459-happyReduction_459 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["statement"] Nothing)- ) (\r -> happyReturn (happyIn113 r))--happyReduce_460 = happySpecReduce_1 85# happyReduction_460-happyReduction_460 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn113- (AntiPragma (getANTI_PRAGMA happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_461 = happySpecReduce_1 85# happyReduction_461-happyReduction_461 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn113- (AntiStm (getANTI_STM happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_462 = happySpecReduce_1 85# happyReduction_462-happyReduction_462 happy_x_1- = case happyOut143 happy_x_1 of { happy_var_1 -> - happyIn113- (happy_var_1- )}--happyReduce_463 = happySpecReduce_1 85# happyReduction_463-happyReduction_463 happy_x_1- = case happyOut161 happy_x_1 of { happy_var_1 -> - happyIn113- (happy_var_1- )}--happyReduce_464 = happySpecReduce_1 86# happyReduction_464-happyReduction_464 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn114- (mkEmptyCommentStm happy_var_1- )}--happyReduce_465 = happySpecReduce_1 86# happyReduction_465-happyReduction_465 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn114- (AntiComment (getANTI_COMMENT happy_var_1) (Exp Nothing noLoc) (srclocOf happy_var_1)- )}--happyReduce_466 = happySpecReduce_1 87# happyReduction_466-happyReduction_466 happy_x_1- = case happyOut114 happy_x_1 of { happy_var_1 -> - happyIn115- ([happy_var_1]- )}--happyReduce_467 = happySpecReduce_1 87# happyReduction_467-happyReduction_467 happy_x_1- = case happyOut116 happy_x_1 of { happy_var_1 -> - happyIn115- (rev happy_var_1- )}--happyReduce_468 = happySpecReduce_2 87# happyReduction_468-happyReduction_468 happy_x_2- happy_x_1- = case happyOut116 happy_x_1 of { happy_var_1 -> - case happyOut114 happy_x_2 of { happy_var_2 -> - happyIn115- (rev (rcons happy_var_2 happy_var_1)- )}}--happyReduce_469 = happySpecReduce_1 88# happyReduction_469-happyReduction_469 happy_x_1- = case happyOut113 happy_x_1 of { happy_var_1 -> - happyIn116- (rsingleton happy_var_1- )}--happyReduce_470 = happySpecReduce_1 88# happyReduction_470-happyReduction_470 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn116- (rsingleton (AntiStms (getANTI_STMS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_471 = happySpecReduce_2 88# happyReduction_471-happyReduction_471 happy_x_2- happy_x_1- = case happyOut114 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn116- (AntiStms (getANTI_STMS happy_var_2) (srclocOf happy_var_2) `rcons` happy_var_1 `rcons` rnil- )}}--happyReduce_472 = happySpecReduce_2 88# happyReduction_472-happyReduction_472 happy_x_2- happy_x_1- = case happyOut116 happy_x_1 of { happy_var_1 -> - case happyOut113 happy_x_2 of { happy_var_2 -> - happyIn116- (happy_var_2 `rcons` happy_var_1- )}}--happyReduce_473 = happySpecReduce_2 88# happyReduction_473-happyReduction_473 happy_x_2- happy_x_1- = case happyOut116 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn116- (AntiStms (getANTI_STMS happy_var_2) (srclocOf happy_var_2) `rcons` happy_var_1- )}}--happyReduce_474 = happySpecReduce_3 88# happyReduction_474-happyReduction_474 happy_x_3- happy_x_2- happy_x_1- = case happyOut116 happy_x_1 of { happy_var_1 -> - case happyOut114 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn116- (AntiStms (getANTI_STMS happy_var_3) (srclocOf happy_var_3) `rcons` happy_var_2 `rcons` happy_var_1- )}}}--happyReduce_475 = happyMonadReduce 3# 89# happyReduction_475-happyReduction_475 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["statement"] (Just "label"))- ) (\r -> happyReturn (happyIn117 r))--happyReduce_476 = happySpecReduce_3 89# happyReduction_476-happyReduction_476 happy_x_3- happy_x_2- happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - case happyOut113 happy_x_3 of { happy_var_3 -> - happyIn117- (Label happy_var_1 [] happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_477 = happyMonadReduce 3# 89# happyReduction_477-happyReduction_477 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["`:'"] Nothing)- ) (\r -> happyReturn (happyIn117 r))--happyReduce_478 = happyMonadReduce 4# 89# happyReduction_478-happyReduction_478 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["statement"] Nothing)- ) (\r -> happyReturn (happyIn117 r))--happyReduce_479 = happyReduce 4# 89# happyReduction_479-happyReduction_479 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut55 happy_x_2 of { happy_var_2 -> - case happyOut113 happy_x_4 of { happy_var_4 -> - happyIn117- (Case happy_var_2 happy_var_4 (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_480 = happyMonadReduce 2# 89# happyReduction_480-happyReduction_480 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["`:'"] (Just "`default'"))- ) (\r -> happyReturn (happyIn117 r))--happyReduce_481 = happyMonadReduce 3# 89# happyReduction_481-happyReduction_481 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["statement"] Nothing)- ) (\r -> happyReturn (happyIn117 r))--happyReduce_482 = happySpecReduce_3 89# happyReduction_482-happyReduction_482 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut113 happy_x_3 of { happy_var_3 -> - happyIn117- (Default happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_483 = happyReduce 4# 89# happyReduction_483-happyReduction_483 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut28 happy_x_1 of { happy_var_1 -> - case happyOut137 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn117- (Label happy_var_1 happy_var_3 (Exp Nothing noLoc) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_484 = happyReduce 4# 90# happyReduction_484-happyReduction_484 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn118- (Block [] (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}--happyReduce_485 = happyReduce 5# 90# happyReduction_485-happyReduction_485 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut119 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn118- (Block happy_var_3 (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_486 = happyMonadReduce 3# 90# happyReduction_486-happyReduction_486 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_3 of { happy_var_3 -> - ( unclosed (locOf happy_var_3) "{")}- ) (\r -> happyReturn (happyIn118 r))--happyReduce_487 = happySpecReduce_1 91# happyReduction_487-happyReduction_487 happy_x_1- = case happyOut120 happy_x_1 of { happy_var_1 -> - happyIn119- (rev happy_var_1- )}--happyReduce_488 = happySpecReduce_2 91# happyReduction_488-happyReduction_488 happy_x_2- happy_x_1- = case happyOut120 happy_x_1 of { happy_var_1 -> - case happyOut114 happy_x_2 of { happy_var_2 -> - happyIn119- (rev (rcons (BlockStm happy_var_2) happy_var_1)- )}}--happyReduce_489 = happySpecReduce_1 92# happyReduction_489-happyReduction_489 happy_x_1- = case happyOut121 happy_x_1 of { happy_var_1 -> - happyIn120- (rsingleton happy_var_1- )}--happyReduce_490 = happySpecReduce_2 92# happyReduction_490-happyReduction_490 happy_x_2- happy_x_1- = case happyOut121 happy_x_2 of { happy_var_2 -> - happyIn120- (rsingleton happy_var_2- )}--happyReduce_491 = happySpecReduce_1 92# happyReduction_491-happyReduction_491 happy_x_1- = case happyOut113 happy_x_1 of { happy_var_1 -> - happyIn120- (rsingleton (BlockStm happy_var_1)- )}--happyReduce_492 = happySpecReduce_2 92# happyReduction_492-happyReduction_492 happy_x_2- happy_x_1- = case happyOut120 happy_x_1 of { happy_var_1 -> - case happyOut121 happy_x_2 of { happy_var_2 -> - happyIn120- (rcons happy_var_2 happy_var_1- )}}--happyReduce_493 = happySpecReduce_3 92# happyReduction_493-happyReduction_493 happy_x_3- happy_x_2- happy_x_1- = case happyOut120 happy_x_1 of { happy_var_1 -> - case happyOut121 happy_x_3 of { happy_var_3 -> - happyIn120- (rcons happy_var_3 happy_var_1- )}}--happyReduce_494 = happySpecReduce_2 92# happyReduction_494-happyReduction_494 happy_x_2- happy_x_1- = case happyOut120 happy_x_1 of { happy_var_1 -> - case happyOut113 happy_x_2 of { happy_var_2 -> - happyIn120- (rcons (BlockStm happy_var_2) happy_var_1- )}}--happyReduce_495 = happySpecReduce_1 93# happyReduction_495-happyReduction_495 happy_x_1- = case happyOut56 happy_x_1 of { happy_var_1 -> - happyIn121- (BlockDecl happy_var_1- )}--happyReduce_496 = happySpecReduce_1 93# happyReduction_496-happyReduction_496 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn121- (BlockDecl (AntiDecls (getANTI_DECLS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_497 = happySpecReduce_1 93# happyReduction_497-happyReduction_497 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn121- (BlockStm (AntiStms (getANTI_STMS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_498 = happySpecReduce_1 93# happyReduction_498-happyReduction_498 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn121- (AntiBlockItem (getANTI_ITEM happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_499 = happySpecReduce_1 93# happyReduction_499-happyReduction_499 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn121- (AntiBlockItems (getANTI_ITEMS happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_500 = happySpecReduce_1 94# happyReduction_500-happyReduction_500 happy_x_1- = case happyOut113 happy_x_1 of { happy_var_1 -> - happyIn122- (BlockStm happy_var_1- )}--happyReduce_501 = happySpecReduce_2 94# happyReduction_501-happyReduction_501 happy_x_2- happy_x_1- = case happyOut113 happy_x_1 of { happy_var_1 -> - happyIn122- (BlockStm happy_var_1- )}--happyReduce_502 = happySpecReduce_1 94# happyReduction_502-happyReduction_502 happy_x_1- = case happyOut121 happy_x_1 of { happy_var_1 -> - happyIn122- (happy_var_1- )}--happyReduce_503 = happySpecReduce_2 94# happyReduction_503-happyReduction_503 happy_x_2- happy_x_1- = case happyOut121 happy_x_2 of { happy_var_2 -> - happyIn122- (happy_var_2- )}--happyReduce_504 = happySpecReduce_2 94# happyReduction_504-happyReduction_504 happy_x_2- happy_x_1- = case happyOut121 happy_x_1 of { happy_var_1 -> - happyIn122- (happy_var_1- )}--happyReduce_505 = happyMonadReduce 0# 95# happyReduction_505-happyReduction_505 (happyRest) tk- = happyThen (( pushScope)- ) (\r -> happyReturn (happyIn123 r))--happyReduce_506 = happyMonadReduce 0# 96# happyReduction_506-happyReduction_506 (happyRest) tk- = happyThen (( popScope)- ) (\r -> happyReturn (happyIn124 r))--happyReduce_507 = happySpecReduce_1 97# happyReduction_507-happyReduction_507 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn125- (Exp Nothing (srclocOf happy_var_1)- )}--happyReduce_508 = happySpecReduce_2 97# happyReduction_508-happyReduction_508 happy_x_2- happy_x_1- = case happyOut53 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn125- (Exp (Just happy_var_1) (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_509 = happyMonadReduce 2# 97# happyReduction_509-happyReduction_509 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["';'"] Nothing)- ) (\r -> happyReturn (happyIn125 r))--happyReduce_510 = happyReduce 5# 98# happyReduction_510-happyReduction_510 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - case happyOut113 happy_x_5 of { happy_var_5 -> - happyIn126- (If happy_var_3 happy_var_5 Nothing (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_511 = happyReduce 7# 98# happyReduction_511-happyReduction_511 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - case happyOut113 happy_x_5 of { happy_var_5 -> - case happyOut113 happy_x_7 of { happy_var_7 -> - happyIn126- (If happy_var_3 happy_var_5 (Just happy_var_7) (happy_var_1 `srcspan` happy_var_7)- ) `HappyStk` happyRest}}}}--happyReduce_512 = happyMonadReduce 2# 98# happyReduction_512-happyReduction_512 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["("] (Just "`if'"))- ) (\r -> happyReturn (happyIn126 r))--happyReduce_513 = happyMonadReduce 4# 98# happyReduction_513-happyReduction_513 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - ( unclosed (happy_var_2 <--> happy_var_3) "(")}}- ) (\r -> happyReturn (happyIn126 r))--happyReduce_514 = happyReduce 5# 98# happyReduction_514-happyReduction_514 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - case happyOut113 happy_x_5 of { happy_var_5 -> - happyIn126- (Switch happy_var_3 happy_var_5 (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_515 = happyMonadReduce 4# 98# happyReduction_515-happyReduction_515 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - ( unclosed (happy_var_2 <--> happy_var_3) "(")}}- ) (\r -> happyReturn (happyIn126 r))--happyReduce_516 = happyReduce 5# 99# happyReduction_516-happyReduction_516 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - case happyOut113 happy_x_5 of { happy_var_5 -> - happyIn127- (While happy_var_3 happy_var_5 (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_517 = happyMonadReduce 4# 99# happyReduction_517-happyReduction_517 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - ( unclosed (happy_var_2 <--> happy_var_3) "(")}}- ) (\r -> happyReturn (happyIn127 r))--happyReduce_518 = happyReduce 7# 99# happyReduction_518-happyReduction_518 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut113 happy_x_2 of { happy_var_2 -> - case happyOut53 happy_x_5 of { happy_var_5 -> - case happyOutTok happy_x_7 of { happy_var_7 -> - happyIn127- (DoWhile happy_var_2 happy_var_5 (happy_var_1 `srcspan` happy_var_7)- ) `HappyStk` happyRest}}}}--happyReduce_519 = happyMonadReduce 6# 99# happyReduction_519-happyReduction_519 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_4 of { happy_var_4 -> - case happyOut53 happy_x_5 of { happy_var_5 -> - ( unclosed (happy_var_4 <--> happy_var_5) "(")}}- ) (\r -> happyReturn (happyIn127 r))--happyReduce_520 = happyMonadReduce 3# 99# happyReduction_520-happyReduction_520 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["expression", "declaration"] Nothing)- ) (\r -> happyReturn (happyIn127 r))--happyReduce_521 = happyReduce 7# 99# happyReduction_521-happyReduction_521 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut56 happy_x_3 of { happy_var_3 -> - case happyOut54 happy_x_4 of { happy_var_4 -> - case happyOut113 happy_x_7 of { happy_var_7 -> - happyIn127- (For (Left happy_var_3) happy_var_4 Nothing happy_var_7 (happy_var_1 `srcspan` happy_var_7)- ) `HappyStk` happyRest}}}}--happyReduce_522 = happyReduce 8# 99# happyReduction_522-happyReduction_522 (happy_x_8 `HappyStk`- happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut54 happy_x_3 of { happy_var_3 -> - case happyOut54 happy_x_5 of { happy_var_5 -> - case happyOut113 happy_x_8 of { happy_var_8 -> - happyIn127- (For (Right happy_var_3) happy_var_5 Nothing happy_var_8 (happy_var_1 `srcspan` happy_var_8)- ) `HappyStk` happyRest}}}}--happyReduce_523 = happyMonadReduce 7# 99# happyReduction_523-happyReduction_523 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut32 happy_x_6 of { happy_var_6 -> - ( unclosed (happy_var_2 <--> happy_var_6) "(")}}- ) (\r -> happyReturn (happyIn127 r))--happyReduce_524 = happyReduce 8# 99# happyReduction_524-happyReduction_524 (happy_x_8 `HappyStk`- happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut56 happy_x_3 of { happy_var_3 -> - case happyOut54 happy_x_4 of { happy_var_4 -> - case happyOut53 happy_x_6 of { happy_var_6 -> - case happyOut113 happy_x_8 of { happy_var_8 -> - happyIn127- (For (Left happy_var_3) happy_var_4 (Just happy_var_6) happy_var_8 (happy_var_1 `srcspan` happy_var_8)- ) `HappyStk` happyRest}}}}}--happyReduce_525 = happyReduce 9# 99# happyReduction_525-happyReduction_525 (happy_x_9 `HappyStk`- happy_x_8 `HappyStk`- happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut54 happy_x_3 of { happy_var_3 -> - case happyOut54 happy_x_5 of { happy_var_5 -> - case happyOut53 happy_x_7 of { happy_var_7 -> - case happyOut113 happy_x_9 of { happy_var_9 -> - happyIn127- (For (Right happy_var_3) happy_var_5 (Just happy_var_7) happy_var_9 (happy_var_1 `srcspan` happy_var_9)- ) `HappyStk` happyRest}}}}}--happyReduce_526 = happyMonadReduce 8# 99# happyReduction_526-happyReduction_526 (happy_x_8 `HappyStk`- happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut53 happy_x_7 of { happy_var_7 -> - ( unclosed (happy_var_2 <--> happy_var_7) "(")}}- ) (\r -> happyReturn (happyIn127 r))--happyReduce_527 = happySpecReduce_3 100# happyReduction_527-happyReduction_527 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn128- (Goto happy_var_2 (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_528 = happyMonadReduce 2# 100# happyReduction_528-happyReduction_528 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["identifier"] (Just "`goto'"))- ) (\r -> happyReturn (happyIn128 r))--happyReduce_529 = happyMonadReduce 3# 100# happyReduction_529-happyReduction_529 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["';'"] Nothing)- ) (\r -> happyReturn (happyIn128 r))--happyReduce_530 = happySpecReduce_2 100# happyReduction_530-happyReduction_530 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn128- (Continue (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_531 = happyMonadReduce 2# 100# happyReduction_531-happyReduction_531 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["';'"] (Just "`continue'"))- ) (\r -> happyReturn (happyIn128 r))--happyReduce_532 = happySpecReduce_2 100# happyReduction_532-happyReduction_532 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn128- (Break (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_533 = happyMonadReduce 2# 100# happyReduction_533-happyReduction_533 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["';'"] (Just "`break'"))- ) (\r -> happyReturn (happyIn128 r))--happyReduce_534 = happySpecReduce_2 100# happyReduction_534-happyReduction_534 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn128- (Return Nothing (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_535 = happyMonadReduce 2# 100# happyReduction_535-happyReduction_535 (happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["';'", "expression"] Nothing)- ) (\r -> happyReturn (happyIn128 r))--happyReduce_536 = happySpecReduce_3 100# happyReduction_536-happyReduction_536 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_2 of { happy_var_2 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn128- (Return (Just happy_var_2) (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_537 = happyMonadReduce 3# 100# happyReduction_537-happyReduction_537 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["';'"] Nothing)- ) (\r -> happyReturn (happyIn128 r))--happyReduce_538 = happySpecReduce_1 101# happyReduction_538-happyReduction_538 happy_x_1- = case happyOut130 happy_x_1 of { happy_var_1 -> - happyIn129- (rev happy_var_1- )}--happyReduce_539 = happySpecReduce_0 102# happyReduction_539-happyReduction_539 = happyIn130- (rnil- )--happyReduce_540 = happySpecReduce_2 102# happyReduction_540-happyReduction_540 happy_x_2- happy_x_1- = case happyOut130 happy_x_1 of { happy_var_1 -> - case happyOut131 happy_x_2 of { happy_var_2 -> - happyIn130- (rcons happy_var_2 happy_var_1- )}}--happyReduce_541 = happySpecReduce_2 102# happyReduction_541-happyReduction_541 happy_x_2- happy_x_1- = case happyOut130 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn130- (rcons (AntiEdecls (getANTI_EDECLS happy_var_2) (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_542 = happySpecReduce_1 103# happyReduction_542-happyReduction_542 happy_x_1- = case happyOut132 happy_x_1 of { happy_var_1 -> - happyIn131- (FuncDef happy_var_1 (srclocOf happy_var_1)- )}--happyReduce_543 = happySpecReduce_1 103# happyReduction_543-happyReduction_543 happy_x_1- = case happyOut56 happy_x_1 of { happy_var_1 -> - happyIn131- (DecDef happy_var_1 (srclocOf happy_var_1)- )}--happyReduce_544 = happySpecReduce_1 103# happyReduction_544-happyReduction_544 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn131- (AntiFunc (getANTI_FUNC happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_545 = happySpecReduce_1 103# happyReduction_545-happyReduction_545 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn131- (AntiEsc (getANTI_ESC happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_546 = happySpecReduce_1 103# happyReduction_546-happyReduction_546 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn131- (AntiEdecl (getANTI_EDECL happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_547 = happySpecReduce_1 103# happyReduction_547-happyReduction_547 happy_x_1- = case happyOut171 happy_x_1 of { happy_var_1 -> - happyIn131- (happy_var_1- )}--happyReduce_548 = happySpecReduce_1 103# happyReduction_548-happyReduction_548 happy_x_1- = case happyOut172 happy_x_1 of { happy_var_1 -> - happyIn131- (happy_var_1- )}--happyReduce_549 = happySpecReduce_1 103# happyReduction_549-happyReduction_549 happy_x_1- = case happyOut190 happy_x_1 of { happy_var_1 -> - happyIn131- (happy_var_1- )}--happyReduce_550 = happySpecReduce_1 103# happyReduction_550-happyReduction_550 happy_x_1- = case happyOut192 happy_x_1 of { happy_var_1 -> - happyIn131- (happy_var_1- )}--happyReduce_551 = happySpecReduce_1 103# happyReduction_551-happyReduction_551 happy_x_1- = case happyOut201 happy_x_1 of { happy_var_1 -> - happyIn131- (happy_var_1- )}--happyReduce_552 = happyMonadReduce 3# 104# happyReduction_552-happyReduction_552 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut60 happy_x_1 of { happy_var_1 -> - case happyOut91 happy_x_2 of { happy_var_2 -> - case happyOut118 happy_x_3 of { happy_var_3 -> - ( do{ let (dspec, declRoot) = happy_var_1- ; let (ident, declToDecl) = happy_var_2- ; let Block blockItems _ = happy_var_3- ; let decl = declToDecl declRoot- ; case decl of- { Proto protoDecl args _ -> return $- Func dspec ident protoDecl args- blockItems- (decl `srcspan` blockItems)- ; OldProto protoDecl args _ -> return $- OldFunc dspec ident protoDecl args Nothing- blockItems- (decl `srcspan` blockItems)- ; _ -> parserError (decl <--> blockItems)- (text "bad function declaration")- }- })}}}- ) (\r -> happyReturn (happyIn132 r))--happyReduce_553 = happyMonadReduce 4# 104# happyReduction_553-happyReduction_553 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut60 happy_x_1 of { happy_var_1 -> - case happyOut91 happy_x_2 of { happy_var_2 -> - case happyOut133 happy_x_3 of { happy_var_3 -> - case happyOut118 happy_x_4 of { happy_var_4 -> - ( do{ let (dspec, declRoot) = happy_var_1- ; let (ident, declToDecl) = happy_var_2- ; let argDecls = happy_var_3- ; let Block blockItems _ = happy_var_4- ; let decl = declToDecl declRoot- ; case decl of- { OldProto protoDecl args _ -> return $- OldFunc dspec ident protoDecl args (Just (rev argDecls))- blockItems- (decl `srcspan` blockItems)- ; _ -> parserError (decl <--> blockItems)- (text "bad function declaration")- }- })}}}}- ) (\r -> happyReturn (happyIn132 r))--happyReduce_554 = happySpecReduce_1 105# happyReduction_554-happyReduction_554 happy_x_1- = case happyOut57 happy_x_1 of { happy_var_1 -> - happyIn133- (rsingleton happy_var_1- )}--happyReduce_555 = happySpecReduce_2 105# happyReduction_555-happyReduction_555 happy_x_2- happy_x_1- = case happyOut57 happy_x_1 of { happy_var_1 -> - happyIn133- (rsingleton happy_var_1- )}--happyReduce_556 = happySpecReduce_1 105# happyReduction_556-happyReduction_556 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn133- (rsingleton (AntiDecls (getANTI_DECLS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_557 = happySpecReduce_2 105# happyReduction_557-happyReduction_557 happy_x_2- happy_x_1- = case happyOut133 happy_x_1 of { happy_var_1 -> - case happyOut56 happy_x_2 of { happy_var_2 -> - happyIn133- (rcons happy_var_2 happy_var_1- )}}--happyReduce_558 = happySpecReduce_3 105# happyReduction_558-happyReduction_558 happy_x_3- happy_x_2- happy_x_1- = case happyOut133 happy_x_1 of { happy_var_1 -> - case happyOut56 happy_x_2 of { happy_var_2 -> - happyIn133- (rcons happy_var_2 happy_var_1- )}}--happyReduce_559 = happySpecReduce_2 105# happyReduction_559-happyReduction_559 happy_x_2- happy_x_1- = case happyOut133 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn133- (rcons (AntiDecls (getANTI_DECLS happy_var_2) (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_560 = happySpecReduce_0 106# happyReduction_560-happyReduction_560 = happyIn134- (L noLoc ([], Nothing)- )--happyReduce_561 = happySpecReduce_1 106# happyReduction_561-happyReduction_561 happy_x_1- = case happyOut135 happy_x_1 of { happy_var_1 -> - happyIn134- (L (locOf happy_var_1) ([], Just happy_var_1)- )}--happyReduce_562 = happySpecReduce_2 106# happyReduction_562-happyReduction_562 happy_x_2- happy_x_1- = case happyOut135 happy_x_1 of { happy_var_1 -> - case happyOut137 happy_x_2 of { happy_var_2 -> - happyIn134- (L (happy_var_1 <--> happy_var_2) (happy_var_2, Just happy_var_1)- )}}--happyReduce_563 = happySpecReduce_1 106# happyReduction_563-happyReduction_563 happy_x_1- = case happyOut137 happy_x_1 of { happy_var_1 -> - happyIn134- (L (locOf happy_var_1) (happy_var_1, Nothing)- )}--happyReduce_564 = happySpecReduce_2 106# happyReduction_564-happyReduction_564 happy_x_2- happy_x_1- = case happyOut137 happy_x_1 of { happy_var_1 -> - case happyOut135 happy_x_2 of { happy_var_2 -> - happyIn134- (L (happy_var_1 <--> happy_var_2) (happy_var_1, Just happy_var_2)- )}}--happyReduce_565 = happySpecReduce_3 106# happyReduction_565-happyReduction_565 happy_x_3- happy_x_2- happy_x_1- = case happyOut137 happy_x_1 of { happy_var_1 -> - case happyOut135 happy_x_2 of { happy_var_2 -> - case happyOut137 happy_x_3 of { happy_var_3 -> - happyIn134- (L (happy_var_1 <--> happy_var_3) (happy_var_1 ++ happy_var_3, Just happy_var_2)- )}}}--happyReduce_566 = happyMonadReduce 3# 107# happyReduction_566-happyReduction_566 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["string literal"] Nothing)- ) (\r -> happyReturn (happyIn135 r))--happyReduce_567 = happyReduce 4# 107# happyReduction_567-happyReduction_567 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut34 happy_x_3 of { happy_var_3 -> - happyIn135- (happy_var_3- ) `HappyStk` happyRest}--happyReduce_568 = happySpecReduce_0 108# happyReduction_568-happyReduction_568 = happyIn136- ([]- )--happyReduce_569 = happySpecReduce_1 108# happyReduction_569-happyReduction_569 happy_x_1- = case happyOut137 happy_x_1 of { happy_var_1 -> - happyIn136- (happy_var_1- )}--happyReduce_570 = happySpecReduce_1 109# happyReduction_570-happyReduction_570 happy_x_1- = case happyOut138 happy_x_1 of { happy_var_1 -> - happyIn137- (happy_var_1- )}--happyReduce_571 = happySpecReduce_2 109# happyReduction_571-happyReduction_571 happy_x_2- happy_x_1- = case happyOut137 happy_x_1 of { happy_var_1 -> - case happyOut138 happy_x_2 of { happy_var_2 -> - happyIn137- (happy_var_1 ++ happy_var_2- )}}--happyReduce_572 = happyReduce 6# 110# happyReduction_572-happyReduction_572 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut139 happy_x_4 of { happy_var_4 -> - happyIn138- (rev happy_var_4- ) `HappyStk` happyRest}--happyReduce_573 = happySpecReduce_1 111# happyReduction_573-happyReduction_573 happy_x_1- = case happyOut140 happy_x_1 of { happy_var_1 -> - happyIn139- (rsingleton happy_var_1- )}--happyReduce_574 = happySpecReduce_3 111# happyReduction_574-happyReduction_574 happy_x_3- happy_x_2- happy_x_1- = case happyOut139 happy_x_1 of { happy_var_1 -> - case happyOut140 happy_x_3 of { happy_var_3 -> - happyIn139- (rcons happy_var_3 happy_var_1- )}}--happyReduce_575 = happySpecReduce_1 112# happyReduction_575-happyReduction_575 happy_x_1- = case happyOut141 happy_x_1 of { happy_var_1 -> - happyIn140- (Attr happy_var_1 [] (srclocOf happy_var_1)- )}--happyReduce_576 = happyReduce 4# 112# happyReduction_576-happyReduction_576 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut141 happy_x_1 of { happy_var_1 -> - case happyOut38 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn140- (Attr happy_var_1 (rev happy_var_3) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_577 = happySpecReduce_1 113# happyReduction_577-happyReduction_577 happy_x_1- = case happyOut29 happy_x_1 of { happy_var_1 -> - happyIn141- (happy_var_1- )}--happyReduce_578 = happySpecReduce_1 113# happyReduction_578-happyReduction_578 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "static" (srclocOf happy_var_1)- )}--happyReduce_579 = happySpecReduce_1 113# happyReduction_579-happyReduction_579 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "extern" (srclocOf happy_var_1)- )}--happyReduce_580 = happySpecReduce_1 113# happyReduction_580-happyReduction_580 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "register" (srclocOf happy_var_1)- )}--happyReduce_581 = happySpecReduce_1 113# happyReduction_581-happyReduction_581 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "__block" (srclocOf happy_var_1)- )}--happyReduce_582 = happySpecReduce_1 113# happyReduction_582-happyReduction_582 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "typedef" (srclocOf happy_var_1)- )}--happyReduce_583 = happySpecReduce_1 113# happyReduction_583-happyReduction_583 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "inline" (srclocOf happy_var_1)- )}--happyReduce_584 = happySpecReduce_1 113# happyReduction_584-happyReduction_584 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "auto" (srclocOf happy_var_1)- )}--happyReduce_585 = happySpecReduce_1 113# happyReduction_585-happyReduction_585 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "const" (srclocOf happy_var_1)- )}--happyReduce_586 = happySpecReduce_1 113# happyReduction_586-happyReduction_586 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "volatile" (srclocOf happy_var_1)- )}--happyReduce_587 = happySpecReduce_1 113# happyReduction_587-happyReduction_587 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "unsigned" (srclocOf happy_var_1)- )}--happyReduce_588 = happySpecReduce_1 113# happyReduction_588-happyReduction_588 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "long" (srclocOf happy_var_1)- )}--happyReduce_589 = happySpecReduce_1 113# happyReduction_589-happyReduction_589 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "short" (srclocOf happy_var_1)- )}--happyReduce_590 = happySpecReduce_1 113# happyReduction_590-happyReduction_590 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "signed" (srclocOf happy_var_1)- )}--happyReduce_591 = happySpecReduce_1 113# happyReduction_591-happyReduction_591 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "int" (srclocOf happy_var_1)- )}--happyReduce_592 = happySpecReduce_1 113# happyReduction_592-happyReduction_592 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "char" (srclocOf happy_var_1)- )}--happyReduce_593 = happySpecReduce_1 113# happyReduction_593-happyReduction_593 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "float" (srclocOf happy_var_1)- )}--happyReduce_594 = happySpecReduce_1 113# happyReduction_594-happyReduction_594 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "double" (srclocOf happy_var_1)- )}--happyReduce_595 = happySpecReduce_1 113# happyReduction_595-happyReduction_595 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn141- (Id "void" (srclocOf happy_var_1)- )}--happyReduce_596 = happySpecReduce_0 114# happyReduction_596-happyReduction_596 = happyIn142- (False- )--happyReduce_597 = happySpecReduce_1 114# happyReduction_597-happyReduction_597 happy_x_1- = happyIn142- (True- )--happyReduce_598 = happyReduce 6# 115# happyReduction_598-happyReduction_598 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut142 happy_x_2 of { happy_var_2 -> - case happyOut34 happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_6 of { happy_var_6 -> - happyIn143- (Asm happy_var_2 [] happy_var_4 [] [] [] (happy_var_1 `srcspan` happy_var_6)- ) `HappyStk` happyRest}}}}--happyReduce_599 = happyReduce 8# 115# happyReduction_599-happyReduction_599 (happy_x_8 `HappyStk`- happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut142 happy_x_2 of { happy_var_2 -> - case happyOut34 happy_x_4 of { happy_var_4 -> - case happyOut147 happy_x_6 of { happy_var_6 -> - case happyOutTok happy_x_8 of { happy_var_8 -> - happyIn143- (Asm happy_var_2 [] happy_var_4 happy_var_6 [] [] (happy_var_1 `srcspan` happy_var_8)- ) `HappyStk` happyRest}}}}}--happyReduce_600 = happyReduce 10# 115# happyReduction_600-happyReduction_600 (happy_x_10 `HappyStk`- happy_x_9 `HappyStk`- happy_x_8 `HappyStk`- happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut142 happy_x_2 of { happy_var_2 -> - case happyOut34 happy_x_4 of { happy_var_4 -> - case happyOut147 happy_x_6 of { happy_var_6 -> - case happyOut144 happy_x_8 of { happy_var_8 -> - case happyOutTok happy_x_10 of { happy_var_10 -> - happyIn143- (Asm happy_var_2 [] happy_var_4 happy_var_6 happy_var_8 [] (happy_var_1 `srcspan` happy_var_10)- ) `HappyStk` happyRest}}}}}}--happyReduce_601 = happyReduce 12# 115# happyReduction_601-happyReduction_601 (happy_x_12 `HappyStk`- happy_x_11 `HappyStk`- happy_x_10 `HappyStk`- happy_x_9 `HappyStk`- happy_x_8 `HappyStk`- happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut142 happy_x_2 of { happy_var_2 -> - case happyOut34 happy_x_4 of { happy_var_4 -> - case happyOut147 happy_x_6 of { happy_var_6 -> - case happyOut144 happy_x_8 of { happy_var_8 -> - case happyOut150 happy_x_10 of { happy_var_10 -> - case happyOutTok happy_x_12 of { happy_var_12 -> - happyIn143- (Asm happy_var_2 [] happy_var_4 happy_var_6 happy_var_8 happy_var_10 (happy_var_1 `srcspan` happy_var_12)- ) `HappyStk` happyRest}}}}}}}--happyReduce_602 = happyReduce 14# 115# happyReduction_602-happyReduction_602 (happy_x_14 `HappyStk`- happy_x_13 `HappyStk`- happy_x_12 `HappyStk`- happy_x_11 `HappyStk`- happy_x_10 `HappyStk`- happy_x_9 `HappyStk`- happy_x_8 `HappyStk`- happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut142 happy_x_2 of { happy_var_2 -> - case happyOut34 happy_x_5 of { happy_var_5 -> - case happyOut144 happy_x_8 of { happy_var_8 -> - case happyOut150 happy_x_10 of { happy_var_10 -> - case happyOut154 happy_x_12 of { happy_var_12 -> - case happyOutTok happy_x_14 of { happy_var_14 -> - happyIn143- (AsmGoto happy_var_2 [] happy_var_5 happy_var_8 happy_var_10 happy_var_12 (happy_var_1 `srcspan` happy_var_14)- ) `HappyStk` happyRest}}}}}}}--happyReduce_603 = happySpecReduce_0 116# happyReduction_603-happyReduction_603 = happyIn144- ([]- )--happyReduce_604 = happySpecReduce_1 116# happyReduction_604-happyReduction_604 happy_x_1- = case happyOut145 happy_x_1 of { happy_var_1 -> - happyIn144- (rev happy_var_1- )}--happyReduce_605 = happySpecReduce_1 117# happyReduction_605-happyReduction_605 happy_x_1- = case happyOut146 happy_x_1 of { happy_var_1 -> - happyIn145- (rsingleton happy_var_1- )}--happyReduce_606 = happySpecReduce_3 117# happyReduction_606-happyReduction_606 happy_x_3- happy_x_2- happy_x_1- = case happyOut145 happy_x_1 of { happy_var_1 -> - case happyOut146 happy_x_3 of { happy_var_3 -> - happyIn145- (rcons happy_var_3 happy_var_1- )}}--happyReduce_607 = happyReduce 5# 118# happyReduction_607-happyReduction_607 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut153 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut53 happy_x_4 of { happy_var_4 -> - happyIn146- (AsmIn happy_var_1 ((fst . getSTRING) happy_var_2) happy_var_4- ) `HappyStk` happyRest}}}--happyReduce_608 = happySpecReduce_0 119# happyReduction_608-happyReduction_608 = happyIn147- ([]- )--happyReduce_609 = happySpecReduce_1 119# happyReduction_609-happyReduction_609 happy_x_1- = case happyOut148 happy_x_1 of { happy_var_1 -> - happyIn147- (rev happy_var_1- )}--happyReduce_610 = happySpecReduce_1 120# happyReduction_610-happyReduction_610 happy_x_1- = case happyOut149 happy_x_1 of { happy_var_1 -> - happyIn148- (rsingleton happy_var_1- )}--happyReduce_611 = happySpecReduce_3 120# happyReduction_611-happyReduction_611 happy_x_3- happy_x_2- happy_x_1- = case happyOut148 happy_x_1 of { happy_var_1 -> - case happyOut149 happy_x_3 of { happy_var_3 -> - happyIn148- (rcons happy_var_3 happy_var_1- )}}--happyReduce_612 = happyReduce 5# 121# happyReduction_612-happyReduction_612 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut153 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut28 happy_x_4 of { happy_var_4 -> - happyIn149- (AsmOut happy_var_1 ((fst . getSTRING) happy_var_2) happy_var_4- ) `HappyStk` happyRest}}}--happyReduce_613 = happySpecReduce_0 122# happyReduction_613-happyReduction_613 = happyIn150- ([]- )--happyReduce_614 = happySpecReduce_1 122# happyReduction_614-happyReduction_614 happy_x_1- = case happyOut151 happy_x_1 of { happy_var_1 -> - happyIn150- (rev happy_var_1- )}--happyReduce_615 = happySpecReduce_1 123# happyReduction_615-happyReduction_615 happy_x_1- = case happyOut152 happy_x_1 of { happy_var_1 -> - happyIn151- (rsingleton happy_var_1- )}--happyReduce_616 = happySpecReduce_3 123# happyReduction_616-happyReduction_616 happy_x_3- happy_x_2- happy_x_1- = case happyOut151 happy_x_1 of { happy_var_1 -> - case happyOut152 happy_x_3 of { happy_var_3 -> - happyIn151- (rcons happy_var_3 happy_var_1- )}}--happyReduce_617 = happySpecReduce_1 124# happyReduction_617-happyReduction_617 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn152- ((fst . getSTRING) happy_var_1- )}--happyReduce_618 = happySpecReduce_0 125# happyReduction_618-happyReduction_618 = happyIn153- (Nothing- )--happyReduce_619 = happySpecReduce_3 125# happyReduction_619-happyReduction_619 happy_x_3- happy_x_2- happy_x_1- = case happyOut28 happy_x_2 of { happy_var_2 -> - happyIn153- (Just happy_var_2- )}--happyReduce_620 = happySpecReduce_1 126# happyReduction_620-happyReduction_620 happy_x_1- = case happyOut155 happy_x_1 of { happy_var_1 -> - happyIn154- (rev happy_var_1- )}--happyReduce_621 = happySpecReduce_1 127# happyReduction_621-happyReduction_621 happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - happyIn155- (rsingleton happy_var_1- )}--happyReduce_622 = happySpecReduce_3 127# happyReduction_622-happyReduction_622 happy_x_3- happy_x_2- happy_x_1- = case happyOut155 happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_3 of { happy_var_3 -> - happyIn155- (rcons happy_var_3 happy_var_1- )}}--happyReduce_623 = happyMonadReduce 3# 128# happyReduction_623-happyReduction_623 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut136 happy_x_2 of { happy_var_2 -> - case happyOut118 happy_x_3 of { happy_var_3 -> - ( do { assertBlocksEnabled (happy_var_1 <--> happy_var_3) "To use blocks, enable the blocks language extension"- ; let Block items _ = happy_var_3- ; return $ BlockLit (BlockVoid (srclocOf happy_var_1)) happy_var_2 items (happy_var_1 `srcspan` happy_var_3)- })}}}- ) (\r -> happyReturn (happyIn156 r))--happyReduce_624 = happyMonadReduce 6# 128# happyReduction_624-happyReduction_624 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut99 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - case happyOut136 happy_x_5 of { happy_var_5 -> - case happyOut118 happy_x_6 of { happy_var_6 -> - ( do { assertBlocksEnabled (happy_var_1 <--> happy_var_6) "To use blocks, enable blocks language extension"- ; let Block items _ = happy_var_6- ; return $ BlockLit (BlockParam happy_var_3 (happy_var_2 `srcspan` happy_var_4)) happy_var_5 items (happy_var_1 `srcspan` happy_var_6)- })}}}}}}- ) (\r -> happyReturn (happyIn156 r))--happyReduce_625 = happyMonadReduce 5# 128# happyReduction_625-happyReduction_625 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut79 happy_x_2 of { happy_var_2 -> - case happyOut105 happy_x_3 of { happy_var_3 -> - case happyOut136 happy_x_4 of { happy_var_4 -> - case happyOut118 happy_x_5 of { happy_var_5 -> - ( do { assertBlocksEnabled (happy_var_1 <--> happy_var_5) "To use blocks, enable blocks language extension"- ; let { decl = happy_var_3 (declRoot happy_var_2)- ; Block items _ = happy_var_5- }- ; dspec <- mkDeclSpec happy_var_2- ; let typeLoc = dspec `srcspan` decl- ; return $ BlockLit (BlockType (Type dspec decl typeLoc) typeLoc) happy_var_4 items (happy_var_1 `srcspan` happy_var_5)- })}}}}}- ) (\r -> happyReturn (happyIn156 r))--happyReduce_626 = happySpecReduce_3 129# happyReduction_626-happyReduction_626 happy_x_3- happy_x_2- happy_x_1- = case happyOut52 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn157- (ObjCDictElem happy_var_1 happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_627 = happySpecReduce_1 130# happyReduction_627-happyReduction_627 happy_x_1- = case happyOut157 happy_x_1 of { happy_var_1 -> - happyIn158- (rsingleton happy_var_1- )}--happyReduce_628 = happySpecReduce_1 130# happyReduction_628-happyReduction_628 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn158- (rsingleton (AntiObjCDictElems (getANTI_OBJC_DICTS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_629 = happySpecReduce_3 130# happyReduction_629-happyReduction_629 happy_x_3- happy_x_2- happy_x_1- = case happyOut158 happy_x_1 of { happy_var_1 -> - case happyOut157 happy_x_3 of { happy_var_3 -> - happyIn158- (rcons happy_var_3 happy_var_1- )}}--happyReduce_630 = happySpecReduce_2 131# happyReduction_630-happyReduction_630 happy_x_2- happy_x_1- = case happyOut34 happy_x_2 of { happy_var_2 -> - happyIn159- (rsingleton (mkStringConst happy_var_2)- )}--happyReduce_631 = happySpecReduce_3 131# happyReduction_631-happyReduction_631 happy_x_3- happy_x_2- happy_x_1- = case happyOut159 happy_x_1 of { happy_var_1 -> - case happyOut34 happy_x_3 of { happy_var_3 -> - happyIn159- (rcons (mkStringConst happy_var_3) happy_var_1- )}}--happyReduce_632 = happySpecReduce_1 132# happyReduction_632-happyReduction_632 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn160- (rsingleton (Id "" (srclocOf happy_var_1))- )}--happyReduce_633 = happySpecReduce_2 132# happyReduction_633-happyReduction_633 happy_x_2- happy_x_1- = case happyOut166 happy_x_1 of { happy_var_1 -> - happyIn160- (rsingleton happy_var_1- )}--happyReduce_634 = happySpecReduce_2 132# happyReduction_634-happyReduction_634 happy_x_2- happy_x_1- = case happyOut160 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn160- (rcons (Id "" (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_635 = happySpecReduce_3 132# happyReduction_635-happyReduction_635 happy_x_3- happy_x_2- happy_x_1- = case happyOut160 happy_x_1 of { happy_var_1 -> - case happyOut166 happy_x_2 of { happy_var_2 -> - happyIn160- (rcons happy_var_2 happy_var_1- )}}--happyReduce_636 = happyReduce 7# 133# happyReduction_636-happyReduction_636 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut118 happy_x_3 of { happy_var_3 -> - case happyOut162 happy_x_4 of { happy_var_4 -> - case happyOut118 happy_x_7 of { happy_var_7 -> - happyIn161- (let { Block tryItems _ = happy_var_3- ; Block finallyItems _ = happy_var_7- }- in- ObjCTry tryItems (rev happy_var_4) (Just finallyItems) (happy_var_1 `srcspan` happy_var_7)- ) `HappyStk` happyRest}}}}--happyReduce_637 = happyMonadReduce 4# 133# happyReduction_637-happyReduction_637 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut118 happy_x_3 of { happy_var_3 -> - case happyOut162 happy_x_4 of { happy_var_4 -> - ( do { let { Block tryItems _ = happy_var_3- ; catchStmts = rev happy_var_4- }- ; when (null catchStmts) $- throw $ ParserException (happy_var_1 <--> happy_var_3) $- text "@try statement without @finally needs at least one @catch statement"- ; return $ ObjCTry tryItems catchStmts Nothing (happy_var_1 `srcspan` catchStmts)- })}}}- ) (\r -> happyReturn (happyIn161 r))--happyReduce_638 = happyMonadReduce 6# 133# happyReduction_638-happyReduction_638 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - ( parserError (happy_var_1 <--> happy_var_5)- (text $ "a @try-@catch statement without a @finally clause needs to be followed\n" ++- "by a semicolon if the next statement begins with a '@'"))}}- ) (\r -> happyReturn (happyIn161 r))--happyReduce_639 = happyReduce 4# 133# happyReduction_639-happyReduction_639 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn161- (ObjCThrow (Just happy_var_3) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_640 = happyMonadReduce 4# 133# happyReduction_640-happyReduction_640 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["';'"] Nothing)- ) (\r -> happyReturn (happyIn161 r))--happyReduce_641 = happySpecReduce_3 133# happyReduction_641-happyReduction_641 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn161- (ObjCThrow Nothing (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_642 = happyMonadReduce 3# 133# happyReduction_642-happyReduction_642 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (( expected ["';'", "expression"] Nothing)- ) (\r -> happyReturn (happyIn161 r))--happyReduce_643 = happyReduce 6# 133# happyReduction_643-happyReduction_643 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_4 of { happy_var_4 -> - case happyOut118 happy_x_6 of { happy_var_6 -> - happyIn161- (let Block items _ = happy_var_6- in- ObjCSynchronized happy_var_4 items (happy_var_1 `srcspan` happy_var_6)- ) `HappyStk` happyRest}}}--happyReduce_644 = happySpecReduce_3 133# happyReduction_644-happyReduction_644 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut118 happy_x_3 of { happy_var_3 -> - happyIn161- (let Block items _ = happy_var_3- in- ObjCAutoreleasepool items (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_645 = happySpecReduce_0 134# happyReduction_645-happyReduction_645 = happyIn162- (rnil- )--happyReduce_646 = happyReduce 7# 134# happyReduction_646-happyReduction_646 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut162 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut101 happy_x_5 of { happy_var_5 -> - case happyOut118 happy_x_7 of { happy_var_7 -> - happyIn162- (let Block items _ = happy_var_7- in- rcons (ObjCCatch (Just happy_var_5) items (happy_var_2 `srcspan` happy_var_7)) happy_var_1- ) `HappyStk` happyRest}}}}--happyReduce_647 = happyReduce 7# 134# happyReduction_647-happyReduction_647 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut162 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut118 happy_x_7 of { happy_var_7 -> - happyIn162- (let Block items _ = happy_var_7- in- rcons (ObjCCatch Nothing items (happy_var_2 `srcspan` happy_var_7)) happy_var_1- ) `HappyStk` happyRest}}}--happyReduce_648 = happyMonadReduce 4# 135# happyReduction_648-happyReduction_648 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut164 happy_x_2 of { happy_var_2 -> - case happyOut165 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - ( do { assertObjCEnabled (happy_var_1 <--> happy_var_4) "To use a message expression, enable Objective-C support"- ; let (args, vargs) = happy_var_3- ; return $ ObjCMsg happy_var_2 args vargs (happy_var_1 `srcspan` happy_var_4)- })}}}}- ) (\r -> happyReturn (happyIn163 r))--happyReduce_649 = happySpecReduce_1 136# happyReduction_649-happyReduction_649 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn164- (ObjCRecvTypeName (Id (getNAMED happy_var_1) (srclocOf happy_var_1)) (srclocOf happy_var_1)- )}--happyReduce_650 = happySpecReduce_1 136# happyReduction_650-happyReduction_650 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn164- (ObjCRecvClassName (Id (getOBJCNAMED happy_var_1) (srclocOf happy_var_1)) (srclocOf happy_var_1)- )}--happyReduce_651 = happySpecReduce_1 136# happyReduction_651-happyReduction_651 happy_x_1- = case happyOut53 happy_x_1 of { happy_var_1 -> - happyIn164- (case happy_var_1 of- Var (Id "super" _) loc -> ObjCRecvSuper loc- _ -> ObjCRecvExp happy_var_1 (srclocOf happy_var_1)- )}--happyReduce_652 = happySpecReduce_1 136# happyReduction_652-happyReduction_652 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn164- (AntiObjCRecv (getANTI_OBJC_RECV happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_653 = happySpecReduce_1 137# happyReduction_653-happyReduction_653 happy_x_1- = case happyOut166 happy_x_1 of { happy_var_1 -> - happyIn165- (([ObjCArg (Just happy_var_1) Nothing (srclocOf happy_var_1)], [])- )}--happyReduce_654 = happySpecReduce_2 137# happyReduction_654-happyReduction_654 happy_x_2- happy_x_1- = case happyOut167 happy_x_1 of { happy_var_1 -> - case happyOut169 happy_x_2 of { happy_var_2 -> - happyIn165- ((rev happy_var_1, rev happy_var_2)- )}}--happyReduce_655 = happySpecReduce_1 138# happyReduction_655-happyReduction_655 happy_x_1- = case happyOut29 happy_x_1 of { happy_var_1 -> - happyIn166- (happy_var_1- )}--happyReduce_656 = happySpecReduce_1 138# happyReduction_656-happyReduction_656 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "auto" (srclocOf happy_var_1)- )}--happyReduce_657 = happySpecReduce_1 138# happyReduction_657-happyReduction_657 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "break" (srclocOf happy_var_1)- )}--happyReduce_658 = happySpecReduce_1 138# happyReduction_658-happyReduction_658 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "case" (srclocOf happy_var_1)- )}--happyReduce_659 = happySpecReduce_1 138# happyReduction_659-happyReduction_659 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "char" (srclocOf happy_var_1)- )}--happyReduce_660 = happySpecReduce_1 138# happyReduction_660-happyReduction_660 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "const" (srclocOf happy_var_1)- )}--happyReduce_661 = happySpecReduce_1 138# happyReduction_661-happyReduction_661 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "continue" (srclocOf happy_var_1)- )}--happyReduce_662 = happySpecReduce_1 138# happyReduction_662-happyReduction_662 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "default" (srclocOf happy_var_1)- )}--happyReduce_663 = happySpecReduce_1 138# happyReduction_663-happyReduction_663 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "do" (srclocOf happy_var_1)- )}--happyReduce_664 = happySpecReduce_1 138# happyReduction_664-happyReduction_664 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "double" (srclocOf happy_var_1)- )}--happyReduce_665 = happySpecReduce_1 138# happyReduction_665-happyReduction_665 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "else" (srclocOf happy_var_1)- )}--happyReduce_666 = happySpecReduce_1 138# happyReduction_666-happyReduction_666 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "enum" (srclocOf happy_var_1)- )}--happyReduce_667 = happySpecReduce_1 138# happyReduction_667-happyReduction_667 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "extern" (srclocOf happy_var_1)- )}--happyReduce_668 = happySpecReduce_1 138# happyReduction_668-happyReduction_668 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "float" (srclocOf happy_var_1)- )}--happyReduce_669 = happySpecReduce_1 138# happyReduction_669-happyReduction_669 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "for" (srclocOf happy_var_1)- )}--happyReduce_670 = happySpecReduce_1 138# happyReduction_670-happyReduction_670 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "goto" (srclocOf happy_var_1)- )}--happyReduce_671 = happySpecReduce_1 138# happyReduction_671-happyReduction_671 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "if" (srclocOf happy_var_1)- )}--happyReduce_672 = happySpecReduce_1 138# happyReduction_672-happyReduction_672 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "inline" (srclocOf happy_var_1)- )}--happyReduce_673 = happySpecReduce_1 138# happyReduction_673-happyReduction_673 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "int" (srclocOf happy_var_1)- )}--happyReduce_674 = happySpecReduce_1 138# happyReduction_674-happyReduction_674 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "long" (srclocOf happy_var_1)- )}--happyReduce_675 = happySpecReduce_1 138# happyReduction_675-happyReduction_675 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "register" (srclocOf happy_var_1)- )}--happyReduce_676 = happySpecReduce_1 138# happyReduction_676-happyReduction_676 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "restrict" (srclocOf happy_var_1)- )}--happyReduce_677 = happySpecReduce_1 138# happyReduction_677-happyReduction_677 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "return" (srclocOf happy_var_1)- )}--happyReduce_678 = happySpecReduce_1 138# happyReduction_678-happyReduction_678 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "short" (srclocOf happy_var_1)- )}--happyReduce_679 = happySpecReduce_1 138# happyReduction_679-happyReduction_679 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "signed" (srclocOf happy_var_1)- )}--happyReduce_680 = happySpecReduce_1 138# happyReduction_680-happyReduction_680 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "sizeof" (srclocOf happy_var_1)- )}--happyReduce_681 = happySpecReduce_1 138# happyReduction_681-happyReduction_681 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "static" (srclocOf happy_var_1)- )}--happyReduce_682 = happySpecReduce_1 138# happyReduction_682-happyReduction_682 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "struct" (srclocOf happy_var_1)- )}--happyReduce_683 = happySpecReduce_1 138# happyReduction_683-happyReduction_683 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "switch" (srclocOf happy_var_1)- )}--happyReduce_684 = happySpecReduce_1 138# happyReduction_684-happyReduction_684 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "typedef" (srclocOf happy_var_1)- )}--happyReduce_685 = happySpecReduce_1 138# happyReduction_685-happyReduction_685 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "typename" (srclocOf happy_var_1)- )}--happyReduce_686 = happySpecReduce_1 138# happyReduction_686-happyReduction_686 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "union" (srclocOf happy_var_1)- )}--happyReduce_687 = happySpecReduce_1 138# happyReduction_687-happyReduction_687 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "unsigned" (srclocOf happy_var_1)- )}--happyReduce_688 = happySpecReduce_1 138# happyReduction_688-happyReduction_688 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "void" (srclocOf happy_var_1)- )}--happyReduce_689 = happySpecReduce_1 138# happyReduction_689-happyReduction_689 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "volatile" (srclocOf happy_var_1)- )}--happyReduce_690 = happySpecReduce_1 138# happyReduction_690-happyReduction_690 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "while" (srclocOf happy_var_1)- )}--happyReduce_691 = happySpecReduce_1 138# happyReduction_691-happyReduction_691 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "__block" (srclocOf happy_var_1)- )}--happyReduce_692 = happySpecReduce_1 138# happyReduction_692-happyReduction_692 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "__weak" (srclocOf happy_var_1)- )}--happyReduce_693 = happySpecReduce_1 138# happyReduction_693-happyReduction_693 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "__strong" (srclocOf happy_var_1)- )}--happyReduce_694 = happySpecReduce_1 138# happyReduction_694-happyReduction_694 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn166- (Id "__unsafe_unretained" (srclocOf happy_var_1)- )}--happyReduce_695 = happySpecReduce_1 139# happyReduction_695-happyReduction_695 happy_x_1- = case happyOut168 happy_x_1 of { happy_var_1 -> - happyIn167- (rsingleton happy_var_1- )}--happyReduce_696 = happySpecReduce_2 139# happyReduction_696-happyReduction_696 happy_x_2- happy_x_1- = case happyOut167 happy_x_1 of { happy_var_1 -> - case happyOut168 happy_x_2 of { happy_var_2 -> - happyIn167- (happy_var_2 `rcons` happy_var_1- )}}--happyReduce_697 = happySpecReduce_1 139# happyReduction_697-happyReduction_697 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn167- (rsingleton (AntiObjCArgs (getANTI_OBJC_ARGS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_698 = happySpecReduce_2 140# happyReduction_698-happyReduction_698 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_2 of { happy_var_2 -> - happyIn168- (ObjCArg Nothing (Just happy_var_2) (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_699 = happySpecReduce_3 140# happyReduction_699-happyReduction_699 happy_x_3- happy_x_2- happy_x_1- = case happyOut166 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn168- (ObjCArg (Just happy_var_1) (Just happy_var_3) (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_700 = happySpecReduce_1 140# happyReduction_700-happyReduction_700 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn168- (AntiObjCArg (getANTI_OBJC_ARG happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_701 = happySpecReduce_0 141# happyReduction_701-happyReduction_701 = happyIn169- (rnil- )--happyReduce_702 = happySpecReduce_3 141# happyReduction_702-happyReduction_702 happy_x_3- happy_x_2- happy_x_1- = case happyOut169 happy_x_1 of { happy_var_1 -> - case happyOut52 happy_x_3 of { happy_var_3 -> - happyIn169- (happy_var_3 `rcons` happy_var_1- )}}--happyReduce_703 = happySpecReduce_1 141# happyReduction_703-happyReduction_703 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn169- (rsingleton (AntiArgs (getANTI_ARGS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_704 = happySpecReduce_2 142# happyReduction_704-happyReduction_704 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut30 happy_x_2 of { happy_var_2 -> - happyIn170- (ObjCLitConst Nothing happy_var_2 (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_705 = happySpecReduce_3 142# happyReduction_705-happyReduction_705 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut30 happy_x_3 of { happy_var_3 -> - happyIn170- (ObjCLitConst (Just Positive) happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_706 = happySpecReduce_3 142# happyReduction_706-happyReduction_706 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut30 happy_x_3 of { happy_var_3 -> - happyIn170- (ObjCLitConst (Just Negate) happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_707 = happySpecReduce_1 142# happyReduction_707-happyReduction_707 happy_x_1- = case happyOut159 happy_x_1 of { happy_var_1 -> - happyIn170- (let lits = rev happy_var_1 in ObjCLitString lits (head lits `srcspan` last lits)- )}--happyReduce_708 = happySpecReduce_2 142# happyReduction_708-happyReduction_708 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn170- (ObjCLitBool False (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_709 = happySpecReduce_2 142# happyReduction_709-happyReduction_709 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn170- (ObjCLitBool True (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_710 = happySpecReduce_3 142# happyReduction_710-happyReduction_710 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn170- (ObjCLitArray [] (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_711 = happyReduce 4# 142# happyReduction_711-happyReduction_711 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut36 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn170- (ObjCLitArray (rev happy_var_3) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_712 = happyReduce 5# 142# happyReduction_712-happyReduction_712 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut36 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn170- (ObjCLitArray (rev happy_var_3) (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_713 = happySpecReduce_3 142# happyReduction_713-happyReduction_713 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn170- (ObjCLitDict [] (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_714 = happyReduce 4# 142# happyReduction_714-happyReduction_714 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut158 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn170- (ObjCLitDict (rev happy_var_3) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_715 = happyReduce 5# 142# happyReduction_715-happyReduction_715 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut158 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn170- (ObjCLitDict (rev happy_var_3) (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_716 = happyReduce 4# 142# happyReduction_716-happyReduction_716 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut53 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - happyIn170- (ObjCLitBoxed happy_var_3 (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_717 = happyReduce 5# 142# happyReduction_717-happyReduction_717 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut104 happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn170- (ObjCEncode happy_var_4 (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_718 = happyReduce 5# 142# happyReduction_718-happyReduction_718 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn170- (ObjCProtocol happy_var_4 (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_719 = happyReduce 5# 142# happyReduction_719-happyReduction_719 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut166 happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn170- (let Id str _ = happy_var_4- in- ObjCSelector str (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_720 = happyReduce 5# 142# happyReduction_720-happyReduction_720 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut160 happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn170- (let str = concat [s ++ ":" | Id s _ <- rev happy_var_4]- in- ObjCSelector str (happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}--happyReduce_721 = happyMonadReduce 4# 143# happyReduction_721-happyReduction_721 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut103 happy_x_3 of { happy_var_3 -> - case happyOut32 happy_x_4 of { happy_var_4 -> - ( do { let idents = rev happy_var_3- ; mapM addClassdefId idents- ; return $ ObjCClassDec idents (happy_var_1 `srcspan` happy_var_4)- })}}}- ) (\r -> happyReturn (happyIn171 r))--happyReduce_722 = happyMonadReduce 4# 144# happyReduction_722-happyReduction_722 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_3 of { happy_var_3 -> - case happyOut173 happy_x_4 of { happy_var_4 -> - ( do { let (prot, vars, decls, loc) = happy_var_4- ; addClassdefId happy_var_3- ; return $ ObjCClassIface happy_var_3 Nothing prot vars decls [] (happy_var_1 `srcspan` loc)- })}}}- ) (\r -> happyReturn (happyIn172 r))--happyReduce_723 = happyMonadReduce 5# 144# happyReduction_723-happyReduction_723 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut67 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut28 happy_x_4 of { happy_var_4 -> - case happyOut173 happy_x_5 of { happy_var_5 -> - ( do { let (prot, vars, decls, loc) = happy_var_5- ; addClassdefId happy_var_4- ; attrs <- checkOnlyAttributes happy_var_1- ; return $ ObjCClassIface happy_var_4 Nothing prot vars decls attrs (happy_var_2 `srcspan` loc)- })}}}}- ) (\r -> happyReturn (happyIn172 r))--happyReduce_724 = happyMonadReduce 6# 144# happyReduction_724-happyReduction_724 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_3 of { happy_var_3 -> - case happyOut29 happy_x_5 of { happy_var_5 -> - case happyOut173 happy_x_6 of { happy_var_6 -> - ( do { let (prot, vars, decls, loc) = happy_var_6- ; addClassdefId happy_var_3- ; return $ ObjCClassIface happy_var_3 (Just happy_var_5) prot vars decls [] (happy_var_1 `srcspan` loc)- })}}}}- ) (\r -> happyReturn (happyIn172 r))--happyReduce_725 = happyMonadReduce 7# 144# happyReduction_725-happyReduction_725 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut67 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - case happyOut28 happy_x_4 of { happy_var_4 -> - case happyOut29 happy_x_6 of { happy_var_6 -> - case happyOut173 happy_x_7 of { happy_var_7 -> - ( do { let (prot, vars, decls, loc) = happy_var_7- ; addClassdefId happy_var_4- ; attrs <- checkOnlyAttributes happy_var_1- ; return $ ObjCClassIface happy_var_4 (Just happy_var_6) prot vars decls attrs (happy_var_2 `srcspan` loc)- })}}}}}- ) (\r -> happyReturn (happyIn172 r))--happyReduce_726 = happyReduce 6# 144# happyReduction_726-happyReduction_726 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - case happyOut173 happy_x_6 of { happy_var_6 -> - happyIn172- (let (prot, vars, decls, loc) = happy_var_6- in- ObjCCatIface happy_var_3 Nothing prot vars decls (happy_var_1 `srcspan` loc)- ) `HappyStk` happyRest}}}--happyReduce_727 = happyReduce 7# 144# happyReduction_727-happyReduction_727 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - case happyOut28 happy_x_5 of { happy_var_5 -> - case happyOut173 happy_x_7 of { happy_var_7 -> - happyIn172- (let (prot, vars, decls, loc) = happy_var_7- in- ObjCCatIface happy_var_3 (Just happy_var_5) prot vars decls (happy_var_1 `srcspan` loc)- ) `HappyStk` happyRest}}}}--happyReduce_728 = happyReduce 5# 145# happyReduction_728-happyReduction_728 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut174 happy_x_1 of { happy_var_1 -> - case happyOut175 happy_x_2 of { happy_var_2 -> - case happyOut179 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn173- (( rev happy_var_1, rev happy_var_2, rev happy_var_3, happy_var_4 <--> happy_var_5)- ) `HappyStk` happyRest}}}}}--happyReduce_729 = happySpecReduce_0 146# happyReduction_729-happyReduction_729 = happyIn174- (rnil- )--happyReduce_730 = happySpecReduce_3 146# happyReduction_730-happyReduction_730 happy_x_3- happy_x_2- happy_x_1- = case happyOut103 happy_x_2 of { happy_var_2 -> - happyIn174- (happy_var_2- )}--happyReduce_731 = happySpecReduce_0 147# happyReduction_731-happyReduction_731 = happyIn175- (rnil- )--happyReduce_732 = happySpecReduce_2 147# happyReduction_732-happyReduction_732 happy_x_2- happy_x_1- = happyIn175- (rnil- )--happyReduce_733 = happySpecReduce_3 147# happyReduction_733-happyReduction_733 happy_x_3- happy_x_2- happy_x_1- = case happyOut176 happy_x_2 of { happy_var_2 -> - happyIn175- (happy_var_2- )}--happyReduce_734 = happySpecReduce_1 148# happyReduction_734-happyReduction_734 happy_x_1- = case happyOut177 happy_x_1 of { happy_var_1 -> - happyIn176- (rsingleton (ObjCIvarVisi happy_var_1 (srclocOf happy_var_1))- )}--happyReduce_735 = happySpecReduce_1 148# happyReduction_735-happyReduction_735 happy_x_1- = happyIn176- (rnil- )--happyReduce_736 = happySpecReduce_2 148# happyReduction_736-happyReduction_736 happy_x_2- happy_x_1- = case happyOut78 happy_x_1 of { happy_var_1 -> - happyIn176- (rsingleton (ObjCIvarDecl happy_var_1 (srclocOf happy_var_1))- )}--happyReduce_737 = happySpecReduce_2 148# happyReduction_737-happyReduction_737 happy_x_2- happy_x_1- = case happyOut176 happy_x_1 of { happy_var_1 -> - case happyOut177 happy_x_2 of { happy_var_2 -> - happyIn176- (rcons (ObjCIvarVisi happy_var_2 (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_738 = happySpecReduce_2 148# happyReduction_738-happyReduction_738 happy_x_2- happy_x_1- = case happyOut176 happy_x_1 of { happy_var_1 -> - happyIn176- (happy_var_1- )}--happyReduce_739 = happySpecReduce_3 148# happyReduction_739-happyReduction_739 happy_x_3- happy_x_2- happy_x_1- = case happyOut176 happy_x_1 of { happy_var_1 -> - case happyOut78 happy_x_2 of { happy_var_2 -> - happyIn176- (rcons (ObjCIvarDecl happy_var_2 (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_740 = happySpecReduce_2 149# happyReduction_740-happyReduction_740 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn177- (ObjCPrivate (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_741 = happySpecReduce_2 149# happyReduction_741-happyReduction_741 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn177- (ObjCPublic (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_742 = happySpecReduce_2 149# happyReduction_742-happyReduction_742 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn177- (ObjCProtected (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_743 = happySpecReduce_2 149# happyReduction_743-happyReduction_743 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn177- (ObjCPackage (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_744 = happySpecReduce_1 150# happyReduction_744-happyReduction_744 happy_x_1- = case happyOut179 happy_x_1 of { happy_var_1 -> - happyIn178- (rev happy_var_1- )}--happyReduce_745 = happySpecReduce_0 151# happyReduction_745-happyReduction_745 = happyIn179- (rnil- )--happyReduce_746 = happySpecReduce_2 151# happyReduction_746-happyReduction_746 happy_x_2- happy_x_1- = case happyOut179 happy_x_1 of { happy_var_1 -> - happyIn179- (happy_var_1- )}--happyReduce_747 = happySpecReduce_2 151# happyReduction_747-happyReduction_747 happy_x_2- happy_x_1- = case happyOut179 happy_x_1 of { happy_var_1 -> - case happyOut180 happy_x_2 of { happy_var_2 -> - happyIn179- (rcons happy_var_2 happy_var_1- )}}--happyReduce_748 = happySpecReduce_2 151# happyReduction_748-happyReduction_748 happy_x_2- happy_x_1- = case happyOut179 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn179- (rcons (AntiObjCIfaceDecls (getANTI_OBJC_IFDECLS happy_var_2) (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_749 = happySpecReduce_2 151# happyReduction_749-happyReduction_749 happy_x_2- happy_x_1- = case happyOut179 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn179- (rcons (AntiObjCProps (getANTI_OBJC_PROPS happy_var_2) (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_750 = happySpecReduce_1 152# happyReduction_750-happyReduction_750 happy_x_1- = case happyOut181 happy_x_1 of { happy_var_1 -> - happyIn180- (happy_var_1- )}--happyReduce_751 = happySpecReduce_1 152# happyReduction_751-happyReduction_751 happy_x_1- = case happyOut184 happy_x_1 of { happy_var_1 -> - happyIn180- (ObjCIfaceReq happy_var_1 (srclocOf happy_var_1)- )}--happyReduce_752 = happySpecReduce_2 152# happyReduction_752-happyReduction_752 happy_x_2- happy_x_1- = case happyOut185 happy_x_1 of { happy_var_1 -> - happyIn180- (ObjCIfaceMeth happy_var_1 (srclocOf happy_var_1)- )}--happyReduce_753 = happySpecReduce_1 152# happyReduction_753-happyReduction_753 happy_x_1- = case happyOut56 happy_x_1 of { happy_var_1 -> - happyIn180- (ObjCIfaceDecl happy_var_1 (srclocOf happy_var_1)- )}--happyReduce_754 = happySpecReduce_1 152# happyReduction_754-happyReduction_754 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn180- (AntiObjCIfaceDecl (getANTI_OBJC_IFDECL happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_755 = happySpecReduce_3 153# happyReduction_755-happyReduction_755 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut78 happy_x_3 of { happy_var_3 -> - happyIn181- (ObjCIfaceProp [] happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}--happyReduce_756 = happyReduce 6# 153# happyReduction_756-happyReduction_756 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut182 happy_x_4 of { happy_var_4 -> - case happyOut78 happy_x_6 of { happy_var_6 -> - happyIn181- (ObjCIfaceProp (rev happy_var_4) happy_var_6 (happy_var_1 `srcspan` happy_var_6)- ) `HappyStk` happyRest}}}--happyReduce_757 = happySpecReduce_1 153# happyReduction_757-happyReduction_757 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn181- (AntiObjCProp (getANTI_OBJC_PROP happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_758 = happySpecReduce_1 154# happyReduction_758-happyReduction_758 happy_x_1- = case happyOut183 happy_x_1 of { happy_var_1 -> - happyIn182- (rsingleton happy_var_1- )}--happyReduce_759 = happySpecReduce_3 154# happyReduction_759-happyReduction_759 happy_x_3- happy_x_2- happy_x_1- = case happyOut182 happy_x_1 of { happy_var_1 -> - case happyOut183 happy_x_3 of { happy_var_3 -> - happyIn182- (rcons happy_var_3 happy_var_1- )}}--happyReduce_760 = happySpecReduce_1 154# happyReduction_760-happyReduction_760 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn182- (rsingleton (AntiObjCAttrs (getANTI_OBJC_PROP_ATTRS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_761 = happyMonadReduce 3# 155# happyReduction_761-happyReduction_761 (happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut28 happy_x_1 of { happy_var_1 -> - case happyOut166 happy_x_3 of { happy_var_3 -> - ( case happy_var_1 of- { Id "getter" _ -> return $ ObjCGetter happy_var_3 (happy_var_1 `srcspan` happy_var_3)- ; _ -> expectedObjCPropertyAttr (locOf happy_var_1)- })}}- ) (\r -> happyReturn (happyIn183 r))--happyReduce_762 = happyMonadReduce 4# 155# happyReduction_762-happyReduction_762 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut28 happy_x_1 of { happy_var_1 -> - case happyOut166 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_4 of { happy_var_4 -> - ( case happy_var_1 of- { Id "setter" _ -> return $ ObjCSetter happy_var_3 (happy_var_1 `srcspan` happy_var_4)- ; _ -> expectedObjCPropertyAttr (locOf happy_var_1)- })}}}- ) (\r -> happyReturn (happyIn183 r))--happyReduce_763 = happyMonadReduce 1# 155# happyReduction_763-happyReduction_763 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut28 happy_x_1 of { happy_var_1 -> - ( case happy_var_1 of- { Id "readonly" _ -> return $ ObjCReadonly (srclocOf happy_var_1)- ; Id "readwrite" _ -> return $ ObjCReadwrite (srclocOf happy_var_1)- ; Id "assign" _ -> return $ ObjCAssign (srclocOf happy_var_1)- ; Id "retain" _ -> return $ ObjCRetain (srclocOf happy_var_1)- ; Id "copy" _ -> return $ ObjCCopy (srclocOf happy_var_1)- ; Id "nonatomic" _ -> return $ ObjCNonatomic (srclocOf happy_var_1)- ; Id "atomic" _ -> return $ ObjCAtomic (srclocOf happy_var_1)- ; Id "strong" _ -> return $ ObjCStrong (srclocOf happy_var_1)- ; Id "weak" _ -> return $ ObjCWeak (srclocOf happy_var_1)- ; Id "unsafe_unretained" _ -> return $ ObjCUnsafeUnretained (srclocOf happy_var_1)- ; _ -> expectedObjCPropertyAttr (locOf happy_var_1)- })}- ) (\r -> happyReturn (happyIn183 r))--happyReduce_764 = happySpecReduce_1 155# happyReduction_764-happyReduction_764 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn183- (AntiObjCAttr (getANTI_OBJC_PROP_ATTR happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_765 = happySpecReduce_2 156# happyReduction_765-happyReduction_765 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn184- (ObjCRequired (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_766 = happySpecReduce_2 156# happyReduction_766-happyReduction_766 happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn184- (ObjCOptional (happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_767 = happySpecReduce_3 157# happyReduction_767-happyReduction_767 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut186 happy_x_2 of { happy_var_2 -> - case happyOut136 happy_x_3 of { happy_var_3 -> - happyIn185- (let (res, attrs, params, hasVargs) = happy_var_2- in- ObjCMethodProto False res attrs params hasVargs happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_768 = happySpecReduce_3 157# happyReduction_768-happyReduction_768 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut186 happy_x_2 of { happy_var_2 -> - case happyOut136 happy_x_3 of { happy_var_3 -> - happyIn185- (let (res, attrs, params, hasVargs) = happy_var_2- in- ObjCMethodProto True res attrs params hasVargs happy_var_3 (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_769 = happySpecReduce_1 157# happyReduction_769-happyReduction_769 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn185- (AntiObjCMethodProto (getANTI_OBJC_METHOD_PROTO happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_770 = happySpecReduce_2 158# happyReduction_770-happyReduction_770 happy_x_2- happy_x_1- = case happyOut136 happy_x_1 of { happy_var_1 -> - case happyOut187 happy_x_2 of { happy_var_2 -> - happyIn186- ((Nothing, happy_var_1, happy_var_2, False)- )}}--happyReduce_771 = happyReduce 5# 158# happyReduction_771-happyReduction_771 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut104 happy_x_2 of { happy_var_2 -> - case happyOut136 happy_x_4 of { happy_var_4 -> - case happyOut187 happy_x_5 of { happy_var_5 -> - happyIn186- ((Just happy_var_2, happy_var_4, happy_var_5, False)- ) `HappyStk` happyRest}}}--happyReduce_772 = happyReduce 4# 158# happyReduction_772-happyReduction_772 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut136 happy_x_1 of { happy_var_1 -> - case happyOut187 happy_x_2 of { happy_var_2 -> - happyIn186- ((Nothing, happy_var_1, happy_var_2, True)- ) `HappyStk` happyRest}}--happyReduce_773 = happyReduce 7# 158# happyReduction_773-happyReduction_773 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut104 happy_x_2 of { happy_var_2 -> - case happyOut136 happy_x_4 of { happy_var_4 -> - case happyOut187 happy_x_5 of { happy_var_5 -> - happyIn186- ((Just happy_var_2, happy_var_4, happy_var_5, True)- ) `HappyStk` happyRest}}}--happyReduce_774 = happySpecReduce_1 159# happyReduction_774-happyReduction_774 happy_x_1- = case happyOut166 happy_x_1 of { happy_var_1 -> - happyIn187- ([ObjCParam (Just happy_var_1) Nothing [] Nothing (srclocOf happy_var_1)]- )}--happyReduce_775 = happySpecReduce_1 159# happyReduction_775-happyReduction_775 happy_x_1- = case happyOut188 happy_x_1 of { happy_var_1 -> - happyIn187- (rev happy_var_1- )}--happyReduce_776 = happySpecReduce_1 160# happyReduction_776-happyReduction_776 happy_x_1- = case happyOut189 happy_x_1 of { happy_var_1 -> - happyIn188- (rsingleton happy_var_1- )}--happyReduce_777 = happySpecReduce_2 160# happyReduction_777-happyReduction_777 happy_x_2- happy_x_1- = case happyOut188 happy_x_1 of { happy_var_1 -> - case happyOut189 happy_x_2 of { happy_var_2 -> - happyIn188- (rcons happy_var_2 happy_var_1- )}}--happyReduce_778 = happySpecReduce_1 160# happyReduction_778-happyReduction_778 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn188- (rsingleton (AntiObjCParams (getANTI_OBJC_PARAMS happy_var_1) (srclocOf happy_var_1))- )}--happyReduce_779 = happyReduce 7# 161# happyReduction_779-happyReduction_779 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut166 happy_x_1 of { happy_var_1 -> - case happyOut104 happy_x_4 of { happy_var_4 -> - case happyOut136 happy_x_6 of { happy_var_6 -> - case happyOut28 happy_x_7 of { happy_var_7 -> - happyIn189- (ObjCParam (Just happy_var_1) (Just happy_var_4) happy_var_6 (Just happy_var_7) (happy_var_1 `srcspan` happy_var_7)- ) `HappyStk` happyRest}}}}--happyReduce_780 = happyReduce 6# 161# happyReduction_780-happyReduction_780 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut104 happy_x_3 of { happy_var_3 -> - case happyOut136 happy_x_5 of { happy_var_5 -> - case happyOut28 happy_x_6 of { happy_var_6 -> - happyIn189- (ObjCParam Nothing (Just happy_var_3) happy_var_5 (Just happy_var_6) (happy_var_1 `srcspan` happy_var_6)- ) `HappyStk` happyRest}}}}--happyReduce_781 = happyReduce 4# 161# happyReduction_781-happyReduction_781 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut166 happy_x_1 of { happy_var_1 -> - case happyOut136 happy_x_3 of { happy_var_3 -> - case happyOut28 happy_x_4 of { happy_var_4 -> - happyIn189- (ObjCParam (Just happy_var_1) Nothing happy_var_3 (Just happy_var_4) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_782 = happySpecReduce_3 161# happyReduction_782-happyReduction_782 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut136 happy_x_2 of { happy_var_2 -> - case happyOut28 happy_x_3 of { happy_var_3 -> - happyIn189- (ObjCParam Nothing Nothing happy_var_2 (Just happy_var_3) (happy_var_1 `srcspan` happy_var_3)- )}}}--happyReduce_783 = happySpecReduce_1 161# happyReduction_783-happyReduction_783 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn189- (AntiObjCParam (getANTI_OBJC_PARAM happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_784 = happyReduce 5# 162# happyReduction_784-happyReduction_784 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut191 happy_x_1 of { happy_var_1 -> - case happyOut174 happy_x_2 of { happy_var_2 -> - case happyOut179 happy_x_3 of { happy_var_3 -> - case happyOutTok happy_x_5 of { happy_var_5 -> - happyIn190- (ObjCProtDef (fst happy_var_1) (rev happy_var_2) (rev happy_var_3) (snd happy_var_1 `srcspan` happy_var_5)- ) `HappyStk` happyRest}}}}--happyReduce_785 = happySpecReduce_2 162# happyReduction_785-happyReduction_785 happy_x_2- happy_x_1- = case happyOut191 happy_x_1 of { happy_var_1 -> - case happyOut32 happy_x_2 of { happy_var_2 -> - happyIn190- (ObjCProtDec [fst happy_var_1] (snd happy_var_1 `srcspan` happy_var_2)- )}}--happyReduce_786 = happyReduce 4# 162# happyReduction_786-happyReduction_786 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut191 happy_x_1 of { happy_var_1 -> - case happyOut103 happy_x_3 of { happy_var_3 -> - case happyOut32 happy_x_4 of { happy_var_4 -> - happyIn190- (ObjCProtDec (fst happy_var_1 : rev happy_var_3) (snd happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_787 = happySpecReduce_3 163# happyReduction_787-happyReduction_787 happy_x_3- happy_x_2- happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_3 of { happy_var_3 -> - happyIn191- ((happy_var_3, locOf happy_var_1)- )}}--happyReduce_788 = happyReduce 6# 164# happyReduction_788-happyReduction_788 (happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - case happyOut29 happy_x_5 of { happy_var_5 -> - case happyOut193 happy_x_6 of { happy_var_6 -> - happyIn192- (let (ivars, defs, loc) = happy_var_6- in- ObjCClassImpl happy_var_3 (Just happy_var_5) ivars defs (happy_var_1 `srcspan` loc)- ) `HappyStk` happyRest}}}}--happyReduce_789 = happyReduce 4# 164# happyReduction_789-happyReduction_789 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - case happyOut193 happy_x_4 of { happy_var_4 -> - happyIn192- (let (ivars, defs, loc) = happy_var_4- in- ObjCClassImpl happy_var_3 Nothing ivars defs (happy_var_1 `srcspan` loc)- ) `HappyStk` happyRest}}}--happyReduce_790 = happyReduce 7# 164# happyReduction_790-happyReduction_790 (happy_x_7 `HappyStk`- happy_x_6 `HappyStk`- happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut29 happy_x_3 of { happy_var_3 -> - case happyOut28 happy_x_5 of { happy_var_5 -> - case happyOut194 happy_x_7 of { happy_var_7 -> - happyIn192- (ObjCCatImpl happy_var_3 happy_var_5 (fst happy_var_7) (happy_var_1 `srcspan` snd happy_var_7)- ) `HappyStk` happyRest}}}}--happyReduce_791 = happySpecReduce_2 165# happyReduction_791-happyReduction_791 happy_x_2- happy_x_1- = case happyOut175 happy_x_1 of { happy_var_1 -> - case happyOut194 happy_x_2 of { happy_var_2 -> - happyIn193- ((rev happy_var_1, fst happy_var_2, snd happy_var_2)- )}}--happyReduce_792 = happySpecReduce_3 166# happyReduction_792-happyReduction_792 happy_x_3- happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_3 of { happy_var_3 -> - happyIn194- ((rev happy_var_1, locOf happy_var_3)- )}}--happyReduce_793 = happySpecReduce_1 167# happyReduction_793-happyReduction_793 happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - happyIn195- (rev happy_var_1- )}--happyReduce_794 = happySpecReduce_0 168# happyReduction_794-happyReduction_794 = happyIn196- (rnil- )--happyReduce_795 = happySpecReduce_2 168# happyReduction_795-happyReduction_795 happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOut132 happy_x_2 of { happy_var_2 -> - happyIn196- (rcons (FuncDef happy_var_2 (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_796 = happySpecReduce_2 168# happyReduction_796-happyReduction_796 happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOut56 happy_x_2 of { happy_var_2 -> - happyIn196- (rcons (DecDef happy_var_2 (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_797 = happySpecReduce_2 168# happyReduction_797-happyReduction_797 happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOut197 happy_x_2 of { happy_var_2 -> - happyIn196- (rcons happy_var_2 happy_var_1- )}}--happyReduce_798 = happySpecReduce_2 168# happyReduction_798-happyReduction_798 happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOut199 happy_x_2 of { happy_var_2 -> - happyIn196- (rcons happy_var_2 happy_var_1- )}}--happyReduce_799 = happySpecReduce_2 168# happyReduction_799-happyReduction_799 happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOut200 happy_x_2 of { happy_var_2 -> - happyIn196- (rcons happy_var_2 happy_var_1- )}}--happyReduce_800 = happySpecReduce_2 168# happyReduction_800-happyReduction_800 happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn196- (rcons (AntiFunc (getANTI_FUNC happy_var_2) (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_801 = happySpecReduce_2 168# happyReduction_801-happyReduction_801 happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn196- (rcons (AntiEsc (getANTI_ESC happy_var_2) (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_802 = happySpecReduce_2 168# happyReduction_802-happyReduction_802 happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn196- (rcons (AntiEdecls (getANTI_EDECL happy_var_2) (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_803 = happySpecReduce_2 168# happyReduction_803-happyReduction_803 happy_x_2- happy_x_1- = case happyOut196 happy_x_1 of { happy_var_1 -> - case happyOutTok happy_x_2 of { happy_var_2 -> - happyIn196- (rcons (AntiEdecls (getANTI_EDECLS happy_var_2) (srclocOf happy_var_2)) happy_var_1- )}}--happyReduce_804 = happyReduce 4# 169# happyReduction_804-happyReduction_804 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut198 happy_x_3 of { happy_var_3 -> - case happyOut32 happy_x_4 of { happy_var_4 -> - happyIn197- (ObjCSynDef (rev happy_var_3) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_805 = happySpecReduce_1 170# happyReduction_805-happyReduction_805 happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - happyIn198- (rsingleton (happy_var_1, Nothing)- )}--happyReduce_806 = happySpecReduce_3 170# happyReduction_806-happyReduction_806 happy_x_3- happy_x_2- happy_x_1- = case happyOut28 happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_3 of { happy_var_3 -> - happyIn198- (rsingleton (happy_var_1, Just happy_var_3)- )}}--happyReduce_807 = happySpecReduce_2 170# happyReduction_807-happyReduction_807 happy_x_2- happy_x_1- = case happyOut198 happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_2 of { happy_var_2 -> - happyIn198- (rcons (happy_var_2, Nothing) happy_var_1- )}}--happyReduce_808 = happyReduce 4# 170# happyReduction_808-happyReduction_808 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOut198 happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_2 of { happy_var_2 -> - case happyOut28 happy_x_4 of { happy_var_4 -> - happyIn198- (rcons (happy_var_2, Just happy_var_4) happy_var_1- ) `HappyStk` happyRest}}}--happyReduce_809 = happyReduce 4# 171# happyReduction_809-happyReduction_809 (happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest)- = case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut103 happy_x_3 of { happy_var_3 -> - case happyOut32 happy_x_4 of { happy_var_4 -> - happyIn199- (ObjCDynDef (rev happy_var_3) (happy_var_1 `srcspan` happy_var_4)- ) `HappyStk` happyRest}}}--happyReduce_810 = happySpecReduce_3 172# happyReduction_810-happyReduction_810 happy_x_3- happy_x_2- happy_x_1- = case happyOut185 happy_x_1 of { happy_var_1 -> - case happyOut118 happy_x_3 of { happy_var_3 -> - happyIn200- (let Block stmts loc = happy_var_3- in- ObjCMethDef happy_var_1 stmts (happy_var_1 `srcspan` loc)- )}}--happyReduce_811 = happySpecReduce_2 172# happyReduction_811-happyReduction_811 happy_x_2- happy_x_1- = case happyOut185 happy_x_1 of { happy_var_1 -> - case happyOut118 happy_x_2 of { happy_var_2 -> - happyIn200- (let Block stmts loc = happy_var_2- in- ObjCMethDef happy_var_1 stmts (happy_var_1 `srcspan` loc)- )}}--happyReduce_812 = happySpecReduce_1 172# happyReduction_812-happyReduction_812 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn200- (AntiObjCMeth (getANTI_OBJC_METHOD_DEF happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_813 = happySpecReduce_1 172# happyReduction_813-happyReduction_813 happy_x_1- = case happyOutTok happy_x_1 of { happy_var_1 -> - happyIn200- (AntiObjCMeths (getANTI_OBJC_METHOD_DEFS happy_var_1) (srclocOf happy_var_1)- )}--happyReduce_814 = happyMonadReduce 5# 173# happyReduction_814-happyReduction_814 (happy_x_5 `HappyStk`- happy_x_4 `HappyStk`- happy_x_3 `HappyStk`- happy_x_2 `HappyStk`- happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOutTok happy_x_1 of { happy_var_1 -> - case happyOut28 happy_x_3 of { happy_var_3 -> - case happyOut32 happy_x_5 of { happy_var_5 -> - ( do { addClassdefId happy_var_3- ; return $ ObjCCompAlias happy_var_3 (Id (getOBJCNAMED happy_var_1) (srclocOf happy_var_1)) (happy_var_1 `srcspan` happy_var_5)- })}}}- ) (\r -> happyReturn (happyIn201 r))--happyReduce_815 = happyMonadReduce 1# 174# happyReduction_815-happyReduction_815 (happy_x_1 `HappyStk`- happyRest) tk- = happyThen (case happyOut38 happy_x_1 of { happy_var_1 -> - (do { let args = rev happy_var_1- ; when (length args < 2 || length args > 4) $ do- parserError (locOf (rev happy_var_1)) $- text "execution context should have 2-4 arguments, but saw" <+>- ppr (length args)- ; return $- case args of- { [gridDim, blockDim] ->- ExeConfig gridDim blockDim- Nothing Nothing- (srclocOf args)- ; [gridDim, blockDim, sharedSize] ->- ExeConfig gridDim blockDim- (Just sharedSize) Nothing- (srclocOf args)- ; [gridDim, blockDim, sharedSize, exeStream] ->- ExeConfig gridDim blockDim- (Just sharedSize) (Just exeStream)- (srclocOf args)- }- })}- ) (\r -> happyReturn (happyIn202 r))--happyNewToken action sts stk- = lexer(\tk -> - let cont i = happyDoAction i tk action sts stk in- case tk of {- L _ T.Teof -> happyDoAction 209# tk action sts stk;- L _ (T.TcharConst _) -> cont 1#;- L _ (T.TstringConst _) -> cont 2#;- L _ (T.TintConst _) -> cont 3#;- L _ (T.TlongIntConst _) -> cont 4#;- L _ (T.TlongLongIntConst _) -> cont 5#;- L _ (T.TfloatConst _) -> cont 6#;- L _ (T.TdoubleConst _) -> cont 7#;- L _ (T.TlongDoubleConst _) -> cont 8#;- L _ (T.Tidentifier _) -> cont 9#;- L _ (T.Tnamed _) -> cont 10#;- L _ T.Tlparen -> cont 11#;- L _ T.Trparen -> cont 12#;- L _ T.Tlbrack -> cont 13#;- L _ T.Trbrack -> cont 14#;- L _ T.Tlbrace -> cont 15#;- L _ T.Trbrace -> cont 16#;- L _ T.Tcomma -> cont 17#;- L _ T.Tsemi -> cont 18#;- L _ T.Tcolon -> cont 19#;- L _ T.Tquestion -> cont 20#;- L _ T.Tdot -> cont 21#;- L _ T.Tarrow -> cont 22#;- L _ T.Tellipses -> cont 23#;- L _ T.Tplus -> cont 24#;- L _ T.Tminus -> cont 25#;- L _ T.Tstar -> cont 26#;- L _ T.Tdiv -> cont 27#;- L _ T.Tmod -> cont 28#;- L _ T.Tnot -> cont 29#;- L _ T.Tand -> cont 30#;- L _ T.Tor -> cont 31#;- L _ T.Txor -> cont 32#;- L _ T.Tlsh -> cont 33#;- L _ T.Trsh -> cont 34#;- L _ T.Tinc -> cont 35#;- L _ T.Tdec -> cont 36#;- L _ T.Tlnot -> cont 37#;- L _ T.Tland -> cont 38#;- L _ T.Tlor -> cont 39#;- L _ T.Teq -> cont 40#;- L _ T.Tne -> cont 41#;- L _ T.Tlt -> cont 42#;- L _ T.Tgt -> cont 43#;- L _ T.Tle -> cont 44#;- L _ T.Tge -> cont 45#;- L _ T.Tassign -> cont 46#;- L _ T.Tadd_assign -> cont 47#;- L _ T.Tsub_assign -> cont 48#;- L _ T.Tmul_assign -> cont 49#;- L _ T.Tdiv_assign -> cont 50#;- L _ T.Tmod_assign -> cont 51#;- L _ T.Tlsh_assign -> cont 52#;- L _ T.Trsh_assign -> cont 53#;- L _ T.Tand_assign -> cont 54#;- L _ T.Tor_assign -> cont 55#;- L _ T.Txor_assign -> cont 56#;- L _ T.Tauto -> cont 57#;- L _ T.Tbreak -> cont 58#;- L _ T.Tcase -> cont 59#;- L _ T.Tchar -> cont 60#;- L _ T.Tconst -> cont 61#;- L _ T.Tcontinue -> cont 62#;- L _ T.Tdefault -> cont 63#;- L _ T.Tdo -> cont 64#;- L _ T.Tdouble -> cont 65#;- L _ T.Telse -> cont 66#;- L _ T.Tenum -> cont 67#;- L _ T.Textern -> cont 68#;- L _ T.Tfloat -> cont 69#;- L _ T.Tfor -> cont 70#;- L _ T.Tgoto -> cont 71#;- L _ T.Tif -> cont 72#;- L _ T.Tint -> cont 73#;- L _ T.Tlong -> cont 74#;- L _ T.Tregister -> cont 75#;- L _ T.Treturn -> cont 76#;- L _ T.Tshort -> cont 77#;- L _ T.Tsigned -> cont 78#;- L _ T.Tsizeof -> cont 79#;- L _ T.Tstatic -> cont 80#;- L _ T.Tstruct -> cont 81#;- L _ T.Tswitch -> cont 82#;- L _ T.Ttypedef -> cont 83#;- L _ T.Tunion -> cont 84#;- L _ T.Tunsigned -> cont 85#;- L _ T.Tvoid -> cont 86#;- L _ T.Tvolatile -> cont 87#;- L _ T.Twhile -> cont 88#;- L _ (T.Tpragma _) -> cont 89#;- L _ (T.Tcomment _) -> cont 90#;- L _ T.Ttypename -> cont 91#;- L _ (T.Tanti_id _) -> cont 92#;- L _ (T.Tanti_const _) -> cont 93#;- L _ (T.Tanti_int _) -> cont 94#;- L _ (T.Tanti_uint _) -> cont 95#;- L _ (T.Tanti_lint _) -> cont 96#;- L _ (T.Tanti_ulint _) -> cont 97#;- L _ (T.Tanti_llint _) -> cont 98#;- L _ (T.Tanti_ullint _) -> cont 99#;- L _ (T.Tanti_float _) -> cont 100#;- L _ (T.Tanti_double _) -> cont 101#;- L _ (T.Tanti_long_double _) -> cont 102#;- L _ (T.Tanti_char _) -> cont 103#;- L _ (T.Tanti_string _) -> cont 104#;- L _ (T.Tanti_exp _) -> cont 105#;- L _ (T.Tanti_func _) -> cont 106#;- L _ (T.Tanti_args _) -> cont 107#;- L _ (T.Tanti_decl _) -> cont 108#;- L _ (T.Tanti_decls _) -> cont 109#;- L _ (T.Tanti_sdecl _) -> cont 110#;- L _ (T.Tanti_sdecls _) -> cont 111#;- L _ (T.Tanti_enum _) -> cont 112#;- L _ (T.Tanti_enums _) -> cont 113#;- L _ (T.Tanti_esc _) -> cont 114#;- L _ (T.Tanti_edecl _) -> cont 115#;- L _ (T.Tanti_edecls _) -> cont 116#;- L _ (T.Tanti_item _) -> cont 117#;- L _ (T.Tanti_items _) -> cont 118#;- L _ (T.Tanti_stm _) -> cont 119#;- L _ (T.Tanti_stms _) -> cont 120#;- L _ (T.Tanti_spec _) -> cont 121#;- L _ (T.Tanti_type _) -> cont 122#;- L _ (T.Tanti_param _) -> cont 123#;- L _ (T.Tanti_params _) -> cont 124#;- L _ (T.Tanti_pragma _) -> cont 125#;- L _ (T.Tanti_comment _) -> cont 126#;- L _ (T.Tanti_init _) -> cont 127#;- L _ (T.Tanti_inits _) -> cont 128#;- L _ T.Tinline -> cont 129#;- L _ T.Trestrict -> cont 130#;- L _ T.TBool -> cont 131#;- L _ T.TComplex -> cont 132#;- L _ T.TImaginary -> cont 133#;- L _ T.Tasm -> cont 134#;- L _ T.Tattribute -> cont 135#;- L _ T.Textension -> cont 136#;- L _ T.Tbuiltin_va_arg -> cont 137#;- L _ T.Tbuiltin_va_list -> cont 138#;- L _ T.Ttypeof -> cont 139#;- L _ T.T__block -> cont 140#;- L _ (T.TObjCnamed _) -> cont 141#;- L _ T.TObjCat -> cont 142#;- L _ T.TObjCautoreleasepool -> cont 143#;- L _ T.TObjCcatch -> cont 144#;- L _ T.TObjCclass -> cont 145#;- L _ T.TObjCcompatibility_alias -> cont 146#;- L _ T.TObjCdynamic -> cont 147#;- L _ T.TObjCencode -> cont 148#;- L _ T.TObjCend -> cont 149#;- L _ T.TObjCfinally -> cont 150#;- L _ T.TObjCinterface -> cont 151#;- L _ T.TObjCimplementation -> cont 152#;- L _ T.TObjCNO -> cont 153#;- L _ T.TObjCprivate -> cont 154#;- L _ T.TObjCoptional -> cont 155#;- L _ T.TObjCpublic -> cont 156#;- L _ T.TObjCproperty -> cont 157#;- L _ T.TObjCprotected -> cont 158#;- L _ T.TObjCpackage -> cont 159#;- L _ T.TObjCprotocol -> cont 160#;- L _ T.TObjCrequired -> cont 161#;- L _ T.TObjCselector -> cont 162#;- L _ T.TObjCsynchronized -> cont 163#;- L _ T.TObjCsynthesize -> cont 164#;- L _ T.TObjCthrow -> cont 165#;- L _ T.TObjCtry -> cont 166#;- L _ T.TObjCYES -> cont 167#;- L _ T.TObjC__weak -> cont 168#;- L _ T.TObjC__strong -> cont 169#;- L _ T.TObjC__unsafe_unretained -> cont 170#;- L _ (T.Tanti_objc_ifdecl _) -> cont 171#;- L _ (T.Tanti_objc_ifdecls _) -> cont 172#;- L _ (T.Tanti_objc_prop _) -> cont 173#;- L _ (T.Tanti_objc_props _) -> cont 174#;- L _ (T.Tanti_objc_prop_attr _) -> cont 175#;- L _ (T.Tanti_objc_prop_attrs _) -> cont 176#;- L _ (T.Tanti_objc_dicts _) -> cont 177#;- L _ (T.Tanti_objc_param _) -> cont 178#;- L _ (T.Tanti_objc_params _) -> cont 179#;- L _ (T.Tanti_objc_method_proto _) -> cont 180#;- L _ (T.Tanti_objc_method_def _) -> cont 181#;- L _ (T.Tanti_objc_method_defs _) -> cont 182#;- L _ (T.Tanti_objc_recv _) -> cont 183#;- L _ (T.Tanti_objc_arg _) -> cont 184#;- L _ (T.Tanti_objc_args _) -> cont 185#;- L _ T.TCUDA3lt -> cont 186#;- L _ T.TCUDA3gt -> cont 187#;- L _ T.TCUDAdevice -> cont 188#;- L _ T.TCUDAglobal -> cont 189#;- L _ T.TCUDAhost -> cont 190#;- L _ T.TCUDAconstant -> cont 191#;- L _ T.TCUDAshared -> cont 192#;- L _ T.TCUDArestrict -> cont 193#;- L _ T.TCUDAnoinline -> cont 194#;- L _ T.TCLprivate -> cont 195#;- L _ T.TCLprivate -> cont 196#;- L _ T.TCLlocal -> cont 197#;- L _ T.TCLlocal -> cont 198#;- L _ T.TCLglobal -> cont 199#;- L _ T.TCLglobal -> cont 200#;- L _ T.TCLconstant -> cont 201#;- L _ T.TCLconstant -> cont 202#;- L _ T.TCLreadonly -> cont 203#;- L _ T.TCLreadonly -> cont 204#;- L _ T.TCLwriteonly -> cont 205#;- L _ T.TCLwriteonly -> cont 206#;- L _ T.TCLkernel -> cont 207#;- L _ T.TCLkernel -> cont 208#;- _ -> happyError' tk- })--happyError_ 209# 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' :: () => ((L T.Token)) -> P a-happyError' tk = happyError tk--parseExp = happySomeParser where- happySomeParser = happyThen (happyParse 0#) (\x -> happyReturn (happyOut53 x))--parseEdecl = happySomeParser where- happySomeParser = happyThen (happyParse 1#) (\x -> happyReturn (happyOut131 x))--parseDecl = happySomeParser where- happySomeParser = happyThen (happyParse 2#) (\x -> happyReturn (happyOut56 x))--parseStructDecl = happySomeParser where- happySomeParser = happyThen (happyParse 3#) (\x -> happyReturn (happyOut78 x))--parseEnum = happySomeParser where- happySomeParser = happyThen (happyParse 4#) (\x -> happyReturn (happyOut85 x))--parseType = happySomeParser where- happySomeParser = happyThen (happyParse 5#) (\x -> happyReturn (happyOut102 x))--parseParam = happySomeParser where- happySomeParser = happyThen (happyParse 6#) (\x -> happyReturn (happyOut101 x))--parseParams = happySomeParser where- happySomeParser = happyThen (happyParse 7#) (\x -> happyReturn (happyOut99 x))--parseInit = happySomeParser where- happySomeParser = happyThen (happyParse 8#) (\x -> happyReturn (happyOut108 x))--parseStm = happySomeParser where- happySomeParser = happyThen (happyParse 9#) (\x -> happyReturn (happyOut113 x))--parseStms = happySomeParser where- happySomeParser = happyThen (happyParse 10#) (\x -> happyReturn (happyOut115 x))--parseBlockItem = happySomeParser where- happySomeParser = happyThen (happyParse 11#) (\x -> happyReturn (happyOut122 x))--parseBlockItems = happySomeParser where- happySomeParser = happyThen (happyParse 12#) (\x -> happyReturn (happyOut119 x))--parseUnit = happySomeParser where- happySomeParser = happyThen (happyParse 13#) (\x -> happyReturn (happyOut129 x))--parseFunc = happySomeParser where- happySomeParser = happyThen (happyParse 14#) (\x -> happyReturn (happyOut132 x))--parseObjCProp = happySomeParser where- happySomeParser = happyThen (happyParse 15#) (\x -> happyReturn (happyOut181 x))--parseObjCIfaceDecls = happySomeParser where- happySomeParser = happyThen (happyParse 16#) (\x -> happyReturn (happyOut178 x))--parseObjCImplDecls = happySomeParser where- happySomeParser = happyThen (happyParse 17#) (\x -> happyReturn (happyOut195 x))--parseObjCDictElem = happySomeParser where- happySomeParser = happyThen (happyParse 18#) (\x -> happyReturn (happyOut157 x))--parseObjCPropAttr = happySomeParser where- happySomeParser = happyThen (happyParse 19#) (\x -> happyReturn (happyOut183 x))--parseObjCMethodParam = happySomeParser where- happySomeParser = happyThen (happyParse 20#) (\x -> happyReturn (happyOut189 x))--parseObjCMethodProto = happySomeParser where- happySomeParser = happyThen (happyParse 21#) (\x -> happyReturn (happyOut185 x))--parseObjCMethodDef = happySomeParser where- happySomeParser = happyThen (happyParse 22#) (\x -> happyReturn (happyOut200 x))--parseObjCMethodRecv = happySomeParser where- happySomeParser = happyThen (happyParse 23#) (\x -> happyReturn (happyOut164 x))--parseObjCKeywordArg = happySomeParser where- happySomeParser = happyThen (happyParse 24#) (\x -> happyReturn (happyOut168 x))--happySeq = happyDontSeq---happyError :: L T.Token -> P a-happyError (L loc t) =- parserError (locStart loc) (text "parse error on" <+> quoteTok (ppr t))--getCHAR (L _ (T.TcharConst x)) = x-getSTRING (L _ (T.TstringConst x)) = x-getINT (L _ (T.TintConst x)) = x-getLONG (L _ (T.TlongIntConst x)) = x-getLONG_LONG (L _ (T.TlongLongIntConst x)) = x-getFLOAT (L _ (T.TfloatConst x)) = x-getDOUBLE (L _ (T.TdoubleConst x)) = x-getLONG_DOUBLE (L _ (T.TlongDoubleConst x)) = x-getID (L _ (T.Tidentifier ident)) = ident-getNAMED (L _ (T.Tnamed ident)) = ident-getOBJCNAMED (L _ (T.TObjCnamed ident)) = ident--getPRAGMA (L _ (T.Tpragma pragma)) = pragma--getCOMMENT (L _ (T.Tcomment comment)) = comment--getANTI_ID (L _ (T.Tanti_id v)) = v-getANTI_CONST (L _ (T.Tanti_const v)) = v-getANTI_INT (L _ (T.Tanti_int v)) = v-getANTI_UINT (L _ (T.Tanti_uint v)) = v-getANTI_LINT (L _ (T.Tanti_lint v)) = v-getANTI_ULINT (L _ (T.Tanti_ulint v)) = v-getANTI_LLINT (L _ (T.Tanti_llint v)) = v-getANTI_ULLINT (L _ (T.Tanti_ullint v)) = v-getANTI_FLOAT (L _ (T.Tanti_float v)) = v-getANTI_DOUBLE (L _ (T.Tanti_double v)) = v-getANTI_LONG_DOUBLE (L _ (T.Tanti_long_double v)) = v-getANTI_CHAR (L _ (T.Tanti_char v)) = v-getANTI_STRING (L _ (T.Tanti_string v)) = v-getANTI_EXP (L _ (T.Tanti_exp v)) = v-getANTI_FUNC (L _ (T.Tanti_func v)) = v-getANTI_ARGS (L _ (T.Tanti_args v)) = v-getANTI_DECL (L _ (T.Tanti_decl v)) = v-getANTI_DECLS (L _ (T.Tanti_decls v)) = v-getANTI_SDECL (L _ (T.Tanti_sdecl v)) = v-getANTI_SDECLS (L _ (T.Tanti_sdecls v)) = v-getANTI_ENUM (L _ (T.Tanti_enum v)) = v-getANTI_ENUMS (L _ (T.Tanti_enums v)) = v-getANTI_ESC (L _ (T.Tanti_esc v)) = v-getANTI_EDECL (L _ (T.Tanti_edecl v)) = v-getANTI_EDECLS (L _ (T.Tanti_edecls v)) = v-getANTI_ITEM (L _ (T.Tanti_item v)) = v-getANTI_ITEMS (L _ (T.Tanti_items v)) = v-getANTI_STM (L _ (T.Tanti_stm v)) = v-getANTI_STMS (L _ (T.Tanti_stms v)) = v-getANTI_TYPE (L _ (T.Tanti_type v)) = v-getANTI_SPEC (L _ (T.Tanti_spec v)) = v-getANTI_PARAM (L _ (T.Tanti_param v)) = v-getANTI_PARAMS (L _ (T.Tanti_params v)) = v-getANTI_PRAGMA (L _ (T.Tanti_pragma v)) = v-getANTI_COMMENT (L _ (T.Tanti_comment v)) = v-getANTI_INIT (L _ (T.Tanti_init v)) = v-getANTI_INITS (L _ (T.Tanti_inits v)) = v------- Objective-C----getANTI_OBJC_IFDECL (L _ (T.Tanti_objc_ifdecl v)) = v-getANTI_OBJC_IFDECLS (L _ (T.Tanti_objc_ifdecls v)) = v-getANTI_OBJC_PROP (L _ (T.Tanti_objc_prop v)) = v-getANTI_OBJC_PROPS (L _ (T.Tanti_objc_props v)) = v-getANTI_OBJC_PROP_ATTR (L _ (T.Tanti_objc_prop_attr v)) = v-getANTI_OBJC_PROP_ATTRS (L _ (T.Tanti_objc_prop_attrs v)) = v-getANTI_OBJC_DICTS (L _ (T.Tanti_objc_dicts v)) = v-getANTI_OBJC_PARAM (L _ (T.Tanti_objc_param v)) = v-getANTI_OBJC_PARAMS (L _ (T.Tanti_objc_params v)) = v-getANTI_OBJC_METHOD_PROTO (L _ (T.Tanti_objc_method_proto v)) = v-getANTI_OBJC_METHOD_DEF (L _ (T.Tanti_objc_method_def v)) = v-getANTI_OBJC_METHOD_DEFS (L _ (T.Tanti_objc_method_defs v)) = v-getANTI_OBJC_RECV (L _ (T.Tanti_objc_recv v)) = v-getANTI_OBJC_ARG (L _ (T.Tanti_objc_arg v)) = v-getANTI_OBJC_ARGS (L _ (T.Tanti_objc_args v)) = v--lexer :: (L T.Token -> P a) -> P a-lexer cont = do- t <- lexToken- setCurToken t- cont t--locate :: Loc -> (SrcLoc -> a) -> L a-locate loc f = L loc (f (SrcLoc loc))--data DeclTySpec = DeclTySpec DeclSpec !SrcLoc- | AntiDeclTySpec String !SrcLoc--data TySpec = TSauto !SrcLoc- | TSregister !SrcLoc- | TSstatic !SrcLoc- | TSextern (Maybe Linkage) !SrcLoc- | TStypedef !SrcLoc-- | TSconst !SrcLoc- | TSvolatile !SrcLoc-- | TSsigned !SrcLoc- | TSunsigned !SrcLoc-- | TSvoid !SrcLoc- | TSchar !SrcLoc- | TSshort !SrcLoc- | TSint !SrcLoc- | TSlong !SrcLoc- | TSfloat !SrcLoc- | TSdouble !SrcLoc-- | TSstruct (Maybe Id) (Maybe [FieldGroup]) [Attr] !SrcLoc- | TSunion (Maybe Id) (Maybe [FieldGroup]) [Attr] !SrcLoc- | TSenum (Maybe Id) [CEnum] [Attr] !SrcLoc- | TSnamed Id [Id] !SrcLoc -- the '[Id]' are Objective-C protocol references-- -- C99- | TS_Bool !SrcLoc- | TS_Complex !SrcLoc- | TS_Imaginary !SrcLoc- | TSinline !SrcLoc- | TSrestrict !SrcLoc-- -- GCC- | TStypeofExp Exp !SrcLoc- | TStypeofType Type !SrcLoc- | TSva_list !SrcLoc- | TSAttr Attr-- -- Clang blocks- | TS__block !SrcLoc-- -- Objective-C- | TSObjC__weak !SrcLoc- | TSObjC__strong !SrcLoc- | TSObjC__unsafe_unretained !SrcLoc-- -- CUDA- | TSCUDAdevice !SrcLoc- | TSCUDAglobal !SrcLoc- | TSCUDAhost !SrcLoc- | TSCUDAconstant !SrcLoc- | TSCUDAshared !SrcLoc- | TSCUDArestrict !SrcLoc- | TSCUDAnoinline !SrcLoc-- -- OpenCL- | TSCLprivate !SrcLoc- | TSCLlocal !SrcLoc- | TSCLglobal !SrcLoc- | TSCLconstant !SrcLoc- | TSCLreadonly !SrcLoc- | TSCLwriteonly !SrcLoc- | TSCLkernel !SrcLoc--instance Located DeclTySpec where- locOf (DeclTySpec _ loc) = locOf loc- locOf (AntiDeclTySpec _ loc) = locOf loc--instance Located TySpec where- locOf (TSauto loc) = locOf loc- locOf (TSregister loc) = locOf loc- locOf (TSstatic loc) = locOf loc- locOf (TSextern _ loc) = locOf loc- locOf (TStypedef loc) = locOf loc-- locOf (TSconst loc) = locOf loc- locOf (TSvolatile loc) = locOf loc-- locOf (TSsigned loc) = locOf loc- locOf (TSunsigned loc) = locOf loc-- locOf (TSvoid loc) = locOf loc- locOf (TSchar loc) = locOf loc- locOf (TSshort loc) = locOf loc- locOf (TSint loc) = locOf loc- locOf (TSlong loc) = locOf loc- locOf (TSfloat loc) = locOf loc- locOf (TSdouble loc) = locOf loc-- locOf (TSstruct _ _ _ loc) = locOf loc- locOf (TSunion _ _ _ loc) = locOf loc- locOf (TSenum _ _ _ loc) = locOf loc- locOf (TSnamed _ _ loc) = locOf loc-- locOf (TS_Bool loc) = locOf loc- locOf (TS_Complex loc) = locOf loc- locOf (TS_Imaginary loc) = locOf loc- locOf (TSinline loc) = locOf loc- locOf (TSrestrict loc) = locOf loc-- locOf (TStypeofExp _ loc) = locOf loc- locOf (TStypeofType _ loc) = locOf loc- locOf (TSva_list loc) = locOf loc- locOf (TSAttr attr) = locOf attr-- locOf (TS__block loc) = locOf loc-- locOf (TSObjC__weak loc) = locOf loc- locOf (TSObjC__strong loc) = locOf loc- locOf (TSObjC__unsafe_unretained loc)- = locOf loc-- locOf (TSCUDAdevice loc) = locOf loc- locOf (TSCUDAglobal loc) = locOf loc- locOf (TSCUDAhost loc) = locOf loc- locOf (TSCUDAconstant loc) = locOf loc- locOf (TSCUDAshared loc) = locOf loc- locOf (TSCUDArestrict loc) = locOf loc- locOf (TSCUDAnoinline loc) = locOf loc-- locOf (TSCLprivate loc) = locOf loc- locOf (TSCLlocal loc) = locOf loc- locOf (TSCLglobal loc) = locOf loc- locOf (TSCLconstant loc) = locOf loc- locOf (TSCLreadonly loc) = locOf loc- locOf (TSCLwriteonly loc) = locOf loc- locOf (TSCLkernel loc) = locOf loc--instance Pretty TySpec where- ppr (TSauto _) = text "auto"- ppr (TSregister _) = text "register"- ppr (TSstatic _) = text "static"- ppr (TSextern Nothing _) = text "extern"- ppr (TSextern (Just l) _) = text "extern" <+> ppr l- ppr (TStypedef _) = text "typedef"-- ppr (TSconst _) = text "const"- ppr (TSvolatile _) = text "volatile"-- ppr (TSsigned _) = text "signed"- ppr (TSunsigned _) = text "unsigned"-- ppr (TSvoid _) = text "void"- ppr (TSchar _) = text "char"- ppr (TSshort _) = text "short"- ppr (TSint _) = text "int"- ppr (TSlong _) = text "long"- ppr (TSfloat _) = text "float"- ppr (TSdouble _) = text "double"-- ppr (TSstruct maybe_id maybe_fields attrs _) =- pprStructOrUnion "struct" maybe_id maybe_fields attrs-- ppr (TSunion maybe_id maybe_fields attrs _) =- pprStructOrUnion "union" maybe_id maybe_fields attrs-- ppr (TSenum maybe_id cenums attrs _) =- pprEnum maybe_id cenums attrs-- ppr (TSnamed ident ps _) =- ppr ident <> if null ps then empty else angles (commasep (map ppr ps))-- ppr (TS_Bool _) = text "_Bool"- ppr (TS_Complex _) = text "_Complex"- ppr (TS_Imaginary _) = text "_Imaginary"- ppr (TSinline _) = text "inline"- ppr (TSrestrict _) = text "restrict"-- ppr (TStypeofExp e _) = text "__typeof__" <> parens (ppr e)- ppr (TStypeofType ty _) = text "__typeof__" <> parens (ppr ty)- ppr (TSva_list _) = text "__builtin_va_list"- ppr (TSAttr attr) = ppr [attr]-- ppr (TS__block _) = text "__block"-- ppr (TSObjC__weak _) = text "__weak"- ppr (TSObjC__strong _) = text "__strong"- ppr (TSObjC__unsafe_unretained _) = text "__unsafe_unretained"-- ppr (TSCUDAdevice _) = text "__device__"- ppr (TSCUDAglobal _) = text "__global__"- ppr (TSCUDAhost _) = text "__host__"- ppr (TSCUDAconstant _) = text "__constant__"- ppr (TSCUDAshared _) = text "__shared__"- ppr (TSCUDArestrict _) = text "__restrict__"- ppr (TSCUDAnoinline _) = text "__noinline__"-- ppr (TSCLprivate _) = text "__private"- ppr (TSCLlocal _) = text "__local"- ppr (TSCLglobal _) = text "__global"- ppr (TSCLconstant _) = text "__constant"- ppr (TSCLreadonly _) = text "read_only"- ppr (TSCLwriteonly _) = text "write_only"- ppr (TSCLkernel _) = text "__kernel"--instance Show TySpec where- showsPrec p = shows . pprPrec p--isStorage :: TySpec -> Bool-isStorage (TSauto _) = True-isStorage (TSregister _) = True-isStorage (TSstatic _) = True-isStorage (TSextern _ _) = True-isStorage (TStypedef _) = True-isStorage (TS__block _) = True-isStorage (TSObjC__weak _) = True-isStorage (TSObjC__strong _) = True-isStorage (TSObjC__unsafe_unretained _) = True-isStorage _ = False--mkStorage :: [TySpec] -> [Storage]-mkStorage specs = map mk (filter isStorage specs)- where- mk :: TySpec -> Storage- mk (TSauto loc) = Tauto loc- mk (TSregister loc) = Tregister loc- mk (TSstatic loc) = Tstatic loc- mk (TSextern l loc) = Textern l loc- mk (TStypedef loc) = Ttypedef loc- mk (TS__block loc) = T__block loc- mk (TSObjC__weak loc) = TObjC__weak loc- mk (TSObjC__strong loc) = TObjC__strong loc- mk (TSObjC__unsafe_unretained loc) = TObjC__unsafe_unretained loc- mk _ = error "internal error in mkStorage"--isTypeQual :: TySpec -> Bool-isTypeQual (TSconst _) = True-isTypeQual (TSvolatile _) = True-isTypeQual (TSinline _) = True-isTypeQual (TSrestrict _) = True-isTypeQual (TSAttr _) = True-isTypeQual (TSCUDAdevice _) = True-isTypeQual (TSCUDAglobal _) = True-isTypeQual (TSCUDAhost _) = True-isTypeQual (TSCUDAconstant _) = True-isTypeQual (TSCUDAshared _) = True-isTypeQual (TSCUDArestrict _) = True-isTypeQual (TSCUDAnoinline _) = True-isTypeQual (TSCLprivate _) = True-isTypeQual (TSCLlocal _) = True-isTypeQual (TSCLglobal _) = True-isTypeQual (TSCLconstant _) = True-isTypeQual (TSCLreadonly _) = True-isTypeQual (TSCLwriteonly _) = True-isTypeQual (TSCLkernel _) = True-isTypeQual _ = False--mkTypeQuals :: [TySpec] -> [TypeQual]-mkTypeQuals specs = map mk (filter isTypeQual specs)- where- mk :: TySpec -> TypeQual- mk (TSconst loc) = Tconst loc- mk (TSvolatile loc) = Tvolatile loc- mk (TSinline loc) = Tinline loc- mk (TSrestrict loc) = Trestrict loc- mk (TSAttr attr) = TAttr attr- mk (TSCUDAdevice loc) = TCUDAdevice loc- mk (TSCUDAglobal loc) = TCUDAglobal loc- mk (TSCUDAhost loc) = TCUDAhost loc- mk (TSCUDAconstant loc) = TCUDAconstant loc- mk (TSCUDAshared loc) = TCUDAshared loc- mk (TSCUDArestrict loc) = TCUDArestrict loc- mk (TSCUDAnoinline loc) = TCUDAnoinline loc- mk (TSCLprivate loc) = TCLprivate loc- mk (TSCLlocal loc) = TCLlocal loc- mk (TSCLglobal loc) = TCLglobal loc- mk (TSCLconstant loc) = TCLconstant loc- mk (TSCLreadonly loc) = TCLreadonly loc- mk (TSCLwriteonly loc) = TCLwriteonly loc- mk (TSCLkernel loc) = TCLkernel loc- mk _ = error "internal error in mkTypeQual"--isSign :: TySpec -> Bool-isSign (TSsigned _) = True-isSign (TSunsigned _) = True-isSign _ = False--hasSign :: [TySpec] -> Bool-hasSign specs = any isSign specs--mkSign :: [TySpec] -> P (Maybe Sign)-mkSign specs =- case filter isSign specs of- [] -> return Nothing- [TSunsigned loc] -> return (Just (Tunsigned loc))- [TSsigned loc] -> return (Just (Tsigned loc))- [_] -> fail "internal error in mkSign"- _ -> fail "multiple signs specified"--checkNoSign :: [TySpec] -> String -> P ()-checkNoSign spec msg | hasSign spec = fail msg- | otherwise = return ()--isAttr :: TySpec -> Bool-isAttr (TSAttr _) = True-isAttr _ = False--checkOnlyAttributes :: [TySpec] -> P [Attr]-checkOnlyAttributes specs =- case filter (not . isAttr) specs of- [] -> return attrs- spec : _ -> expected ["attribute"] (Just (show spec))- where- attrs :: [Attr]- attrs = [attr | TSAttr attr <- specs]--mkStringConst :: StringLit -> Const-mkStringConst (StringLit raw s l) =- StringConst raw s l--composeDecls :: Decl -> Decl -> Decl-composeDecls (DeclRoot _) root =- root--composeDecls (C.Ptr quals decl loc) root =- C.Ptr quals (composeDecls decl root) loc--composeDecls (C.BlockPtr quals decl loc) root =- C.BlockPtr quals (composeDecls decl root) loc--composeDecls (Array quals size decl loc) root =- Array quals size (composeDecls decl root) loc--composeDecls (Proto decl args loc) root =- Proto (composeDecls decl root) args loc--composeDecls (OldProto decl args loc) root =- OldProto (composeDecls decl root) args loc--mkDeclSpec :: [TySpec] -> P DeclSpec-mkDeclSpec specs =- go rest- where- storage ::[Storage]- storage = mkStorage specs-- quals :: [TypeQual]- quals = mkTypeQuals specs-- -- All TypeQuals except for attributes- qualsNoAttrs :: [TypeQual]- qualsNoAttrs = mkTypeQuals (filter (not . isAttr) specs)-- -- Attributes pulled from the TySpecs- attrTySpecs :: [Attr]- attrTySpecs = [attr | TSAttr attr <- specs]-- rest :: [TySpec]- rest = [x | x <- specs- , not (isStorage x) && not (isTypeQual x) && not (isSign x)]-- go :: [TySpec] -> P DeclSpec- go [TSvoid l] = do- checkNoSign specs "sign specified for void type"- return $ cdeclSpec storage quals (Tvoid l)-- go [TSchar l] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tchar sign l)-- go [TSshort l] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tshort sign l)-- go [TSshort _, TSint _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tshort sign (srclocOf rest))-- go [TSint _, TSshort _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tshort sign (srclocOf rest))-- go [TSint l] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tint sign l)-- go [TSlong l] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong sign l)-- go [TSlong _, TSint _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong sign (srclocOf rest))-- go [TSint _, TSlong _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong sign (srclocOf rest))-- go [TSlong _, TSlong _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong_long sign (srclocOf rest))-- go [TSlong _, TSlong _, TSint _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong_long sign (srclocOf rest))-- go [TSlong _, TSint _, TSlong _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong_long sign (srclocOf rest))-- go [TSint _, TSlong _, TSlong _] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tlong_long sign (srclocOf rest))-- go [TSfloat loc] = do- checkNoSign specs "sign specified for float type"- return $ cdeclSpec storage quals (Tfloat loc)-- go [TSdouble loc] = do- checkNoSign specs "sign specified for double type"- return $ cdeclSpec storage quals (Tdouble loc)-- go [TSlong _, TSdouble _] = do- checkNoSign specs "sign specified for long double type"- return $ cdeclSpec storage quals (Tlong_double (srclocOf rest))-- go [TSdouble _, TSlong _] = do- checkNoSign specs "sign specified for long double type"- return $ cdeclSpec storage quals (Tlong_double (srclocOf rest))-- -- Attributes for structs, unions, and enums may appear after the closing- -- brace. If this happens, they end up in the list of TypeQuals. We pull- -- them out here and associate them with the struct/union/enum.- go [TSstruct ident fields attrs loc] = do- checkNoSign specs "sign specified for struct type"- return $ cdeclSpec storage qualsNoAttrs- (Tstruct ident fields (attrTySpecs ++ attrs) loc)-- go [TSunion ident fields attrs loc] = do- checkNoSign specs "sign specified for union type"- return $ cdeclSpec storage qualsNoAttrs- (Tunion ident fields (attrTySpecs ++ attrs) loc)-- go [TSenum ident enums attrs loc] = do- checkNoSign specs "sign specified for enum type"- return $ cdeclSpec storage qualsNoAttrs- (Tenum ident enums (attrTySpecs ++ attrs) loc)-- go [TSnamed ident refs loc] = do- checkNoSign specs "sign specified for named type"- return $ cdeclSpec storage quals (Tnamed ident refs loc)-- go [TStypeofExp e loc] = do- checkNoSign specs "sign specified for typeof"- return $ cdeclSpec storage quals (TtypeofExp e loc)-- go [TStypeofType ty loc] = do- checkNoSign specs "sign specified for typeof"- return $ cdeclSpec storage quals (TtypeofType ty loc)-- go [TS_Bool l] = do- checkNoSign specs "sign specified for _Bool"- return $ cdeclSpec storage quals (T_Bool l)-- go [TS_Complex l] = do- checkNoSign specs "sign specified for _Complex"- return $ cdeclSpec storage quals (T_Complex l)-- go [TS_Imaginary l] = do- checkNoSign specs "sign specified for _Imaginary"- return $ cdeclSpec storage quals (T_Imaginary l)-- go [TSva_list l] = do- checkNoSign specs "sign specified for __builtin_va_list"- return $ cdeclSpec storage quals (Tva_list l)-- go [] = do- sign <- mkSign specs- return $ cdeclSpec storage quals (Tint sign (storage `srcspan` quals))-- go tyspecs =- throw $ ParserException (locOf tyspecs)- (text "bad type:" <+> spread (map ppr tyspecs))--mkPtr :: [TySpec] -> Decl -> Decl-mkPtr specs decl = C.Ptr quals decl (specs `srcspan` decl)- where- quals = mkTypeQuals specs--mkBlockPtr :: Loc -> [TySpec] -> P (Decl -> Decl)-mkBlockPtr loc specs = do- assertBlocksEnabled loc "To use blocks, enable the blocks language extension"- return $ \decl -> C.BlockPtr quals decl (specs `srcspan` decl)- where- quals = mkTypeQuals specs--mkArray :: [TySpec] -> ArraySize -> Decl -> Decl-mkArray specs size decl = Array quals size decl (specs `srcspan` decl)- where- quals = mkTypeQuals specs--mkProto :: Params -> Decl -> Decl-mkProto args decl = Proto decl args (args `srcspan` decl)--mkOldProto :: [Id] -> Decl -> Decl-mkOldProto args decl = OldProto decl args (args `srcspan` decl)--checkInitGroup :: DeclSpec -> Decl -> [Attr] -> [Init] -> P InitGroup-checkInitGroup dspec decl attrs inits =- go dspec- where- go :: DeclSpec -> P InitGroup- go (DeclSpec storage quals tspec _) | any isTypedef storage = do- typedefs <- mapM checkInit inits'- let dspec' = cdeclSpec storage' quals tspec- return $ ctypedefGroup dspec' attrs typedefs- where- storage' :: [Storage]- storage' = [x | x <- storage, (not . isTypedef) x]-- isTypedef :: Storage -> Bool- isTypedef (Ttypedef _) = True- isTypedef _ = False-- checkInit :: Init -> P Typedef- checkInit init@(Init ident _ _ (Just _) _ _)=- throw $ ParserException (locOf init) $- text "typedef" <+>- quoteTok (ppr ident) <+>- text "is illegaly initialized"-- checkInit (Init ident@(Id name _) decl _ _ attrs _) = do- addTypedef name- return $ ctypedef ident decl attrs-- checkInit (Init ident@(AntiId _ _) decl _ _ attrs _) =- return $ ctypedef ident decl attrs-- go _ = do- mapM_ checkInit inits'- return $ cinitGroup dspec attrs inits'- where- checkInit :: Init -> P ()- checkInit (Init (Id name _) _ _ _ _ _) = addVariable name- checkInit (Init (AntiId _ _) _ _ _ _ _) = return ()-- composeInitDecl :: Decl -> Init -> Init- composeInitDecl decl (Init ident initDecl maybe_asmlabel maybe_exp attrs loc) =- Init ident (composeDecls initDecl decl) maybe_asmlabel maybe_exp attrs loc-- inits' = map (composeInitDecl decl) inits-- loc :: Loc- loc = dspec <--> attrs <--> inits--checkAnonymousStructOrUnion :: L T.Token -> DeclSpec -> P ()-checkAnonymousStructOrUnion _ (DeclSpec _ _ (Tstruct {}) _) = return ()-checkAnonymousStructOrUnion _ (DeclSpec _ _ (Tunion {}) _) = return ()-checkAnonymousStructOrUnion tok (DeclSpec _ _ (Tunion {}) _) =- expectedAt tok ["anonymous struct or union"] Nothing--declRoot :: Located a => a -> Decl-declRoot x = DeclRoot (srclocOf x)--addClassdefId :: Id -> P ()-addClassdefId (Id str _) = addClassdef str-addClassdefId (AntiId {}) = return ()--assertBlocksEnabled :: Loc -> String -> P ()-assertBlocksEnabled loc errMsg = do- blocks_enabled <- useBlocksExts- unless blocks_enabled $- throw $ ParserException loc $ text errMsg--expectedObjCPropertyAttr :: Loc -> P a-expectedObjCPropertyAttr loc =- throw $ ParserException loc $- text "Expected an Objective-C property attribute; allowed are the following:" </>- nest 2- (text "'getter = <sel>', 'setter = <sel>:', 'readonly', 'readwrite', 'assign'," <+>- text "'retain', 'copy', 'nonatomic', 'atomic', 'strong', 'weak', and 'unsafe_unretained'")--assertObjCEnabled :: Loc -> String -> P ()-assertObjCEnabled loc errMsg = do- objc_enabled <- useObjCExts- unless objc_enabled $- throw $ ParserException loc $ text errMsg--mkCommentStm :: L T.Token -> Stm -> Stm-mkCommentStm tok stm = Comment (getCOMMENT tok) stm (srclocOf tok)--mkEmptyCommentStm :: L T.Token -> Stm-mkEmptyCommentStm tok = mkCommentStm tok (Exp Nothing noLoc)--data RevList a = RNil- | RCons a (RevList a)- | RApp [a] (RevList a)--rnil :: RevList a-rnil = RNil--rsingleton :: a -> RevList a-rsingleton x = RCons x RNil--infixr 5 `rcons`--rcons :: a -> RevList a -> RevList a-rcons x xs = RCons x xs--rapp :: [a] -> RevList a -> RevList a-rapp xs ys = RApp xs ys--rlist :: [a] -> RevList a-rlist xs = rlist' xs rnil- where- rlist' [] acc = acc- rlist' (x:xs) acc = rlist' xs (rcons x acc)--rev :: RevList a -> [a]-rev xs = go [] xs- where- go l RNil = l- go l (RCons x xs) = go (x : l) xs- go l (RApp xs ys) = go (xs ++ l) ys--instance Located a => Located (RevList a) where- locOf RNil = mempty- locOf (RCons x xs) = locOf x `mappend` locOf xs- locOf (RApp xs ys) = locOf xs `mappend` locOf ys-{-# LINE 1 "templates/GenericTemplate.hs" #-}-{-# LINE 1 "templates/GenericTemplate.hs" #-}-{-# LINE 1 "<command-line>" #-}-{-# LINE 10 "<command-line>" #-}-# 1 "/usr/include/stdc-predef.h" 1 3 4--# 17 "/usr/include/stdc-predef.h" 3 4-------------------------------------------{-# LINE 10 "<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" #-}-------- Do not remove this comment. Required to fix CPP parsing when using GCC and a clang-compiled alex.-#if __GLASGOW_HASKELL__ > 706-#define LT(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.<# m)) :: Bool)-#define GTE(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.>=# m)) :: Bool)-#define EQ(n,m) ((Happy_GHC_Exts.tagToEnum# (n Happy_GHC_Exts.==# m)) :: Bool)-#else-#define LT(n,m) (n Happy_GHC_Exts.<# m)-#define GTE(n,m) (n Happy_GHC_Exts.>=# m)-#define EQ(n,m) (n Happy_GHC_Exts.==# m)-#endif-{-# LINE 46 "templates/GenericTemplate.hs" #-}---data Happy_IntList = HappyCons Happy_GHC_Exts.Int# Happy_IntList------{-# 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 0#, it means we've just accepted a partial--- parse (a %partial parser). We must ignore the saved token on the top of--- the stack in this case.-happyAccept 0# tk st sts (_ `HappyStk` ans `HappyStk` _) =- happyReturn1 ans-happyAccept j tk st sts (HappyStk ans _) = - (happyTcHack j (happyTcHack st)) (happyReturn1 ans)---------------------------------------------------------------------------------- Arrays only: do the next action----happyDoAction i tk st- = {- nothing -}--- case action of- 0# -> {- nothing -}- happyFail i tk st- -1# -> {- nothing -}- happyAccept i tk st- n | LT(n,(0# :: Happy_GHC_Exts.Int#)) -> {- nothing -}-- (happyReduceArr Happy_Data_Array.! rule) i tk st- where rule = (Happy_GHC_Exts.I# ((Happy_GHC_Exts.negateInt# ((n Happy_GHC_Exts.+# (1# :: Happy_GHC_Exts.Int#))))))- n -> {- nothing -}--- happyShift new_state i tk st- where new_state = (n Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#))- where off = indexShortOffAddr happyActOffsets st- off_i = (off Happy_GHC_Exts.+# i)- check = if GTE(off_i,(0# :: Happy_GHC_Exts.Int#))- then EQ(indexShortOffAddr happyCheck off_i, i)- else False- action- | check = indexShortOffAddr happyTable off_i- | otherwise = indexShortOffAddr happyDefActions st---indexShortOffAddr (HappyA# arr) off =- Happy_GHC_Exts.narrow16Int# i- where- i = Happy_GHC_Exts.word2Int# (Happy_GHC_Exts.or# (Happy_GHC_Exts.uncheckedShiftL# high 8#) low)- high = Happy_GHC_Exts.int2Word# (Happy_GHC_Exts.ord# (Happy_GHC_Exts.indexCharOffAddr# arr (off' Happy_GHC_Exts.+# 1#)))- low = Happy_GHC_Exts.int2Word# (Happy_GHC_Exts.ord# (Happy_GHC_Exts.indexCharOffAddr# arr off'))- off' = off Happy_GHC_Exts.*# 2#------data HappyAddr = HappyA# Happy_GHC_Exts.Addr#------------------------------------------------------------------------------------- HappyState data type (not arrays)--{-# LINE 170 "templates/GenericTemplate.hs" #-}---------------------------------------------------------------------------------- Shifting a token--happyShift new_state 0# tk st sts stk@(x `HappyStk` _) =- let i = (case Happy_GHC_Exts.unsafeCoerce# x of { (Happy_GHC_Exts.I# (i)) -> i }) in--- trace "shifting the error token" $- happyDoAction i tk new_state (HappyCons (st) (sts)) (stk)--happyShift new_state i tk st sts stk =- happyNewToken new_state (HappyCons (st) (sts)) ((happyInTok (tk))`HappyStk`stk)---- happyReduce is specialised for the common cases.--happySpecReduce_0 i fn 0# tk st sts stk- = happyFail 0# tk st sts stk-happySpecReduce_0 nt fn j tk st@((action)) sts stk- = happyGoto nt j tk st (HappyCons (st) (sts)) (fn `HappyStk` stk)--happySpecReduce_1 i fn 0# tk st sts stk- = happyFail 0# tk st sts stk-happySpecReduce_1 nt fn j tk _ sts@((HappyCons (st@(action)) (_))) (v1`HappyStk`stk')- = let r = fn v1 in- happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))--happySpecReduce_2 i fn 0# tk st sts stk- = happyFail 0# tk st sts stk-happySpecReduce_2 nt fn j tk _ (HappyCons (_) (sts@((HappyCons (st@(action)) (_))))) (v1`HappyStk`v2`HappyStk`stk')- = let r = fn v1 v2 in- happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))--happySpecReduce_3 i fn 0# tk st sts stk- = happyFail 0# tk st sts stk-happySpecReduce_3 nt fn j tk _ (HappyCons (_) ((HappyCons (_) (sts@((HappyCons (st@(action)) (_))))))) (v1`HappyStk`v2`HappyStk`v3`HappyStk`stk')- = let r = fn v1 v2 v3 in- happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))--happyReduce k i fn 0# tk st sts stk- = happyFail 0# tk st sts stk-happyReduce k nt fn j tk st sts stk- = case happyDrop (k Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#)) sts of- sts1@((HappyCons (st1@(action)) (_))) ->- let r = fn stk in -- it doesn't hurt to always seq here...- happyDoSeq r (happyGoto nt j tk st1 sts1 r)--happyMonadReduce k nt fn 0# tk st sts stk- = happyFail 0# tk st sts stk-happyMonadReduce k nt fn j tk st sts stk =- case happyDrop k (HappyCons (st) (sts)) of- sts1@((HappyCons (st1@(action)) (_))) ->- let drop_stk = happyDropStk k stk in- happyThen1 (fn stk tk) (\r -> happyGoto nt j tk st1 sts1 (r `HappyStk` drop_stk))--happyMonad2Reduce k nt fn 0# tk st sts stk- = happyFail 0# tk st sts stk-happyMonad2Reduce k nt fn j tk st sts stk =- case happyDrop k (HappyCons (st) (sts)) of- sts1@((HappyCons (st1@(action)) (_))) ->- let drop_stk = happyDropStk k stk-- off = indexShortOffAddr happyGotoOffsets st1- off_i = (off Happy_GHC_Exts.+# nt)- new_state = indexShortOffAddr happyTable off_i---- in- happyThen1 (fn stk tk) (\r -> happyNewToken new_state sts1 (r `HappyStk` drop_stk))--happyDrop 0# l = l-happyDrop n (HappyCons (_) (t)) = happyDrop (n Happy_GHC_Exts.-# (1# :: Happy_GHC_Exts.Int#)) t--happyDropStk 0# l = l-happyDropStk n (x `HappyStk` xs) = happyDropStk (n Happy_GHC_Exts.-# (1#::Happy_GHC_Exts.Int#)) xs---------------------------------------------------------------------------------- Moving to a new state after a reduction---happyGoto nt j tk st = - {- nothing -}- happyDoAction j tk new_state- where off = indexShortOffAddr happyGotoOffsets st- off_i = (off Happy_GHC_Exts.+# nt)- new_state = indexShortOffAddr happyTable off_i------------------------------------------------------------------------------------- Error recovery (0# is the error token)---- parse error if we are in recovery and we fail again-happyFail 0# tk old_st _ stk@(x `HappyStk` _) =- let i = (case Happy_GHC_Exts.unsafeCoerce# x of { (Happy_GHC_Exts.I# (i)) -> i }) in--- trace "failing" $ - happyError_ 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 0# tk old_st (HappyCons ((action)) (sts)) - (saved_tok `HappyStk` _ `HappyStk` stk) =--- trace ("discarding state, depth " ++ show (length stk)) $- happyDoAction 0# tk action sts ((saved_tok`HappyStk`stk))--}---- Enter error recovery: generate an error token,--- save the old token and carry on.-happyFail i tk (action) sts stk =--- trace "entering error recovery" $- happyDoAction 0# tk action sts ( (Happy_GHC_Exts.unsafeCoerce# (Happy_GHC_Exts.I# (i))) `HappyStk` stk)---- Internal happy errors:--notHappyAtAll :: a-notHappyAtAll = error "Internal Happy error\n"---------------------------------------------------------------------------------- Hack to get the typechecker to accept our action functions---happyTcHack :: Happy_GHC_Exts.Int# -> a -> a-happyTcHack x y = y-{-# INLINE happyTcHack #-}----------------------------------------------------------------------------------- Seq-ing. If the --strict flag is given, then Happy emits --- happySeq = happyDoSeq--- otherwise it emits--- happySeq = happyDontSeq--happyDoSeq, happyDontSeq :: a -> b -> b-happyDoSeq a b = a `seq` b-happyDontSeq a b = b---------------------------------------------------------------------------------- Don't inline any functions from the template. GHC has a nasty habit--- of deciding to inline happyGoto everywhere, which increases the size of--- the generated parser quite a bit.---{-# NOINLINE happyDoAction #-}-{-# NOINLINE happyTable #-}-{-# NOINLINE happyCheck #-}-{-# NOINLINE happyActOffsets #-}-{-# NOINLINE happyGotoOffsets #-}-{-# NOINLINE happyDefActions #-}--{-# NOINLINE happyShift #-}-{-# NOINLINE happySpecReduce_0 #-}-{-# NOINLINE happySpecReduce_1 #-}-{-# NOINLINE happySpecReduce_2 #-}-{-# NOINLINE happySpecReduce_3 #-}-{-# NOINLINE happyReduce #-}-{-# NOINLINE happyMonadReduce #-}-{-# NOINLINE happyGoto #-}-{-# NOINLINE happyFail #-}---- end of Happy Template.
language-c-quote.cabal view
@@ -1,58 +1,90 @@ name: language-c-quote-version: 0.10.2.3-cabal-version: >= 1.10+version: 0.13.0.2+cabal-version: 2.0 license: BSD3 license-file: LICENSE copyright: (c) 2006-2011 Harvard University (c) 2011-2013 Geoffrey Mainland (c) 2013 Manuel M. T. Chakravarty- (c) 2013-2015 Drexel University-author: Geoffrey Mainland <mainland@cs.drexel.edu>-maintainer: Geoffrey Mainland <mainland@cs.drexel.edu>+ (c) 2013-2024 Drexel University+author: Geoffrey Mainland <mainland@drexel.edu>+maintainer: Geoffrey Mainland <mainland@drexel.edu> stability: alpha-homepage: http://www.cs.drexel.edu/~mainland/+homepage: https://github.com/mainland/language-c-quote+bug-reports: https://github.com/mainland/language-c-quote/issues category: Language synopsis: C/CUDA/OpenCL/Objective-C quasiquoting library.-tested-with: GHC==7.6.3, GHC==7.8.3+tested-with: GHC==8.0.2,+ GHC==8.2.2,+ GHC==8.4.3,+ GHC==8.6.5,+ GHC==8.8.4,+ GHC==8.10.7,+ GHC==9.0.2,+ GHC==9.2.2,+ GHC==9.4.8,+ GHC==9.6.4,+ GHC==9.8.2,+ GHC==9.10.1 description: This package provides a general parser for the C language, including most GCC extensions and some CUDA and OpenCL extensions as well as the entire Objective-C language. -build-type: Custom+build-type: Simple extra-source-files:- tests/unit/Objc.hs+ Language/C/Syntax-instances.hs+ CHANGELOG.md +flag full-haskell-antiquotes+ description: Support full Haskell expressions/patterns in antiquotes. This+ adds a dependency on haskell-src-meta, which increases+ compilation time.+ default: True+ manual: True+ library- default-language: Haskell98+ default-language: Haskell2010 build-depends: array >= 0.2 && < 0.6,- base >= 4 && < 5,- bytestring >= 0.9 && < 0.11,- containers >= 0.4 && < 0.6,+ base >= 4.5 && < 5,+ bytestring >= 0.9 && < 0.13,+ containers >= 0.4 && < 0.8, exception-mtl >= 0.3 && < 0.5, exception-transformers >= 0.3 && < 0.5,- filepath >= 1.2 && < 1.5,- haskell-src-meta >= 0.4 && < 0.7,- mainland-pretty >= 0.2.5 && < 0.4,+ filepath >= 1.2 && < 1.6,+ mainland-pretty >= 0.7 && < 0.8, mtl >= 2.0 && < 3,- srcloc >= 0.4 && < 0.6,- syb >= 0.3 && < 0.6,- symbol >= 0.1 && < 0.3,+ srcloc >= 0.4 && < 0.7,+ syb >= 0.3 && < 0.8, template-haskell + if flag(full-haskell-antiquotes)+ if impl(ghc < 7.8)+ build-depends: safe <= 0.3.9++ if impl(ghc >= 8.0) && impl(ghc < 8.1)+ build-depends: haskell-src-meta >= 0.4 && < 0.8.7+ else+ if impl(ghc >= 7.6)+ build-depends: haskell-src-meta >= 0.4 && < 0.9+ else+ build-depends: haskell-src-meta >= 0.4 && < 0.7+ else+ build-depends: haskell-exp-parser >= 0.1 && < 0.2+ if impl(ghc < 7.4)- build-tools:- alex,- happy+ build-tool-depends:+ alex:alex,+ happy:happy if impl(ghc >= 7.4)- build-tools:- alex >=3,- happy+ build-tool-depends:+ alex:alex >=3,+ happy:happy exposed-modules: Language.C@@ -72,22 +104,37 @@ Language.C.Smart Language.C.Syntax + include-dirs: .+ ghc-options: -Wall + if flag(full-haskell-antiquotes)+ cpp-options: -DFULL_HASKELL_ANTIQUOTES+ test-suite unit type: exitcode-stdio-1.0 hs-source-dirs: tests/unit main-is: Main.hs- default-language: Haskell98+ other-modules:+ CUDA+ GCC+ Objc+ MainCPP + default-language: Haskell2010+ build-depends:- HUnit >= 1.2 && < 1.3,+ HUnit >= 1.2 && < 1.7, base >= 4 && < 5,+ bytestring >= 0.9 && < 0.13, language-c-quote,- srcloc >= 0.4 && < 0.6,- symbol >= 0.1 && < 0.3,+ mainland-pretty >= 0.7 && < 0.8,+ srcloc >= 0.4 && < 0.7, test-framework >= 0.8 && < 0.9, test-framework-hunit >= 0.3 && < 0.4++ if flag(full-haskell-antiquotes)+ cpp-options: -DFULL_HASKELL_ANTIQUOTES source-repository head type: git
+ tests/unit/CUDA.hs view
@@ -0,0 +1,62 @@+{-# LANGUAGE QuasiQuotes #-}++module CUDA (cudaTests) where++import Test.Framework+import Test.Framework.Providers.HUnit+import Test.HUnit (Assertion, (@?=))++import Language.C.Quote.CUDA+import Language.C.Syntax+import Data.Loc (noLoc)++mkDeclarator :: [Param] -> Bool -> LambdaDeclarator+mkDeclarator params mutability = LambdaDeclarator (Params params False noLoc) mutability Nothing noLoc++mkIntroducer :: [CaptureListEntry] -> LambdaIntroducer+mkIntroducer mode = (LambdaIntroducer mode noLoc)++emptyLambda :: Exp+emptyLambda = lambdaByCapture []++lambdaByCapture :: [CaptureListEntry] -> Exp+lambdaByCapture captureMode = Lambda (mkIntroducer captureMode) Nothing [] noLoc++lambdaByCaptureBody :: [CaptureListEntry] -> [BlockItem] -> Exp+lambdaByCaptureBody captureMode statements = Lambda (mkIntroducer captureMode) Nothing statements noLoc++lambdaByCaptureParams :: [CaptureListEntry] -> [Param] -> Exp+lambdaByCaptureParams captureMode params = Lambda (mkIntroducer captureMode) (Just $ mkDeclarator params False) [] noLoc++lambdaByParams :: [Param] -> Exp+lambdaByParams params = Lambda (mkIntroducer []) (Just $ mkDeclarator params False) [] noLoc++mutableLambdaByParams :: [Param] -> Exp+mutableLambdaByParams params = Lambda (mkIntroducer []) (Just $ mkDeclarator params True) [] noLoc++cudaTests :: Test+cudaTests = testGroup "CUDA"+ $ map (testCase "lambda-expressions parsing") lambdas+ where+ lambdas :: [Assertion]+ lambdas = [ [cexp|[=] {}|] @?= lambdaByCapture [DefaultByValue]+ , [cexp|[&] {}|] @?= lambdaByCapture[DefaultByReference]+ , [cexp|[] {}|] @?= lambdaByCapture []+ , [cexp|[] {}|] @?= emptyLambda+ , [cexp|[] () {}|] @?= lambdaByParams []+ , [cexp|[] (int i) {}|] @?= lambdaByParams [param_int_i]+ , [cexp|[] (int i, double j) {}|] @?= lambdaByParams [param_int_i, param_double_h]+ , [cexp|[] ($param:param_int_i) {}|] @?= lambdaByParams [param_int_i]+ , [cexp|[] (int i) mutable {}|] @?= mutableLambdaByParams [param_int_i]+ , [cexp|[&] (int i) {}|] @?= lambdaByCaptureParams [DefaultByReference] [param_int_i]+ , [cexp|[&] { $item:item_return_7 } |] @?= lambdaCapturingByRefAndReturning7+ , [cexp|[&] { return $exp:exp_7; } |] @?= lambdaCapturingByRefAndReturning7+ , [cexp|[]{}()|] @?= FnCall emptyLambda [] noLoc+ , [cexp|[](){}()|] @?= FnCall (lambdaByParams []) [] noLoc+ ]++ lambdaCapturingByRefAndReturning7 = lambdaByCaptureBody [DefaultByReference] [item_return_7]+ exp_7 = [cexp|7|]+ item_return_7 = [citem|return 7;|]+ param_int_i = [cparam|int i|]+ param_double_h = [cparam|double j|]
+ tests/unit/GCC.hs view
@@ -0,0 +1,61 @@+{-# LANGUAGE QuasiQuotes #-}++module GCC (+ gccTests+ ) where++import Test.Framework+import Test.Framework.Providers.HUnit+import Test.HUnit (Assertion, assert, (@?=))++import qualified Data.ByteString.Char8 as B+import Data.Char (isSpace)+import Data.Loc (SrcLoc, noLoc, startPos)+import Control.Exception (SomeException)+import Language.C.Quote.GCC+import Language.C.Smart ()+import qualified Language.C.Syntax as C+import qualified Language.C.Parser as P+import Text.PrettyPrint.Mainland+import Text.PrettyPrint.Mainland.Class++gccTests :: Test+gccTests = testGroup "GCC attribute quotations"+ [ testCase "attr antiquote" test_attr+ , testCase "attrs antiquote" test_attrs+ , testCase "attrs antiquote pretty" test_attr_p+ , testCase "case ranges quote" test_case_ranges+ , testCase "case ranges pretty" test_case_ranges_p+ ]+ where+ test_attr :: Assertion+ test_attr =+ [cedecl| int test __attribute__(($attr:a,$attr:b));|]+ @?=+ [cedecl| int test __attribute__((section(".sram2"), noinit));|]+ where+ a = [cattr| section(".sram2") |]+ b = [cattr| noinit |]++ test_attrs :: Assertion+ test_attrs =+ [cedecl| int test __attribute__(($attrs:as));|]+ @?=+ [cedecl| int test __attribute__((section(".sram2"), noinit));|]+ where+ a = [cattr| section(".sram2") |]+ b = [cattr| noinit |]+ as = [ a, b ]++ test_attr_p :: Assertion+ test_attr_p =+ pretty 80 (ppr [cattr|section(".sram2")|]) @?= "section(\".sram2\")"++ test_case_ranges :: Assertion+ test_case_ranges = assert $ case [cstm| case 10 ... 20: ; |] of+ C.CaseRange 10 20 (C.Exp Nothing _) _ -> True+ _ -> False++ test_case_ranges_p :: Assertion+ test_case_ranges_p =+ pretty 80 (ppr [cstm| case 10 ... 20: ; |]) @?= "\ncase 10 ... 20:\n;"
tests/unit/Main.hs view
@@ -6,12 +6,21 @@ import Test.Framework.Providers.HUnit import Test.HUnit (Assertion, (@?=)) -import Data.Loc (SrcLoc, noLoc)+import qualified Data.ByteString.Char8 as B+import Data.Char (isSpace)+import Data.Loc (SrcLoc, noLoc, startPos)+import Control.Exception (SomeException) import Language.C.Quote.C+import qualified Language.C.Quote.GCC as GCC import qualified Language.C.Syntax as C+import qualified Language.C.Parser as P+import MainCPP import Numeric (showHex)-import Objc (objcTests)-import System.Exit (exitFailure, exitSuccess)+import GCC (gccTests)+import Objc (objcTests, objcRegressionTests)+import CUDA (cudaTests)+import Text.PrettyPrint.Mainland+import Text.PrettyPrint.Mainland.Class main :: IO () main = defaultMain tests@@ -23,7 +32,10 @@ , cPatternAntiquotationTests , statementCommentTests , regressionTests+ , gccTests , objcTests+ , objcRegressionTests+ , cudaTests ] constantTests :: Test@@ -61,26 +73,28 @@ @?= C.Const (C.LongLongIntConst "0x10ULL" C.Unsigned 16 noLoc) noLoc constantAntiquotationsTests :: Test-constantAntiquotationsTests = testGroup "Constant antiquotations"+constantAntiquotationsTests = testGroup "Constant antiquotations" $ [ testCase "int antiquotes" test_int , testCase "hex Const antiquote" test_hexconst , testCase "unsigned hex Const antiquote" test_hexconst_u- , testCase "float antiquotes" test_float+ , testGroup "float antiquotes" floatConstTests , testCase "char antiquote" test_char , testCase "string antiquote" test_string- , testCase "unsigned long antiquote of Haskell expression" test_int_hsexp+ , testGroup "misc char constants" charConstTests ]+ ++ testCase_test_int_hsexp where test_int :: Assertion test_int = [cexp|$int:one + $uint:one + $lint:one + $ulint:one + $llint:one + $ullint:one|] @?= [cexp|1 + 1U + 1L + 1UL + 1LL + 1ULL|] where+ one :: Integer one = 1 test_hexconst :: Assertion test_hexconst =- [cexp|$const:(hexconst 10)|]+ [cexp|$const:(hexconst (10 :: Integer))|] @?= C.Const (C.IntConst "0xa" C.Signed 10 noLoc) noLoc where hexconst :: Integral a => a -> C.Const@@ -91,7 +105,7 @@ test_hexconst_u :: Assertion test_hexconst_u =- [cexp|$const:(hexconst_u 10)|]+ [cexp|$const:(hexconst_u (10 :: Integer))|] @?= C.Const (C.IntConst "0xa" C.Unsigned 10 noLoc) noLoc where hexconst_u :: Integral a => a -> C.Const@@ -100,13 +114,34 @@ x :: Integer x = fromIntegral i - test_float :: Assertion- test_float =- [cexp|$float:one + $double:one + $ldouble:one|]- @?= [cexp|1.0F + 1.0 + 1.0L|]+ floatConstTests :: [Test]+ floatConstTests = [ testCase "float antiquotes" test_float+ , testCase "NaN" test_NaN+ , testCase "Infinity" test_infinity+ ] where- one = 1+ test_float :: Assertion+ test_float =+ [cexp|$float:one + $double:one + $ldouble:one|]+ @?= [cexp|1.0F + 1.0 + 1.0L|]+ where+ one :: Fractional a => a+ one = 1 + test_NaN :: Assertion+ test_NaN =+ showCompact [cexp|$double:nan|] @?= "NAN"+ where+ nan :: RealFloat a => a+ nan = acos 2++ test_infinity :: Assertion+ test_infinity =+ showCompact [cexp|$double:inf|] @?= "INFINITY"+ where+ inf :: RealFloat a => a+ inf = 1/0+ test_char :: Assertion test_char = [cexp|$char:a|] @?= [cexp|'a'|]@@ -119,13 +154,22 @@ where hello = "Hello, world\n" - test_int_hsexp :: Assertion- test_int_hsexp =- [cexp|$ulint:(13 - 2*5)|] @?= [cexp|3UL|]+ charConstTests :: [Test]+ charConstTests = [ charConstTest '\0' "'\\0'"+ , charConstTest '\xfff' "'\\u0fff'"+ , charConstTest '\xfffff' "'\\U000fffff'"+ ]+ where+ charConstTest :: Char -> String -> Test+ charConstTest c s =+ testCase ("character constant " ++ show c) $+ showCompact [cexp|$char:c|] @?= s cQuotationTests :: Test cQuotationTests = testGroup "C quotations"- [ testCase "identifier antiquote" test_id+ [ testCase "raw expression-level escape" test_escexp+ , testCase "raw statement-level escape" test_escstm+ , testCase "identifier antiquote" test_id , testCase "expression antiquote" test_exp , testCase "function antiquote" test_func , testCase "args antiquote" test_args@@ -135,10 +179,14 @@ , testCase "enum antiquote" test_enum , testCase "statement antiquote" test_stm , testCase "parameter antiquote" test_param+ , testCase "type qualifier antiquote" test_tyqual+ , testCase "type qualifiers antiquote" test_tyquals , testCase "type antiquote" test_ty , testCase "initializer antiquote" test_init , testCase "initializers antiquote" test_inits , testCase "block items antiquote" test_item+ , testCase "qualifier with type antiquote 1" test_qual_antitype1+ , testCase "qualifier with type antiquote 2" test_qual_antitype2 ] where test_id :: Assertion@@ -154,6 +202,19 @@ y :: C.Id y = C.Id "y" noLoc + test_escexp :: Assertion+ test_escexp =+ let rawstr = "a rather random string"+ in [cexp|$esc:rawstr|]+ @?= C.EscExp rawstr noLoc++ test_escstm :: Assertion+ test_escstm =+ let rawstr = "a rather random string"+ in [citems|$escstm:rawstr if (1) return;|]+ @?= [ C.BlockStm $ C.EscStm rawstr noLoc+ , C.BlockStm $ C.If (C.Const (C.IntConst "1" C.Signed 1 noLoc) noLoc) (C.Return Nothing noLoc) Nothing noLoc ]+ test_exp :: Assertion test_exp = [cexp|$exp:e1 + $exp:e2|] @?= [cexp|1 + 2|]@@ -166,7 +227,7 @@ [cunit|$func:f|] @?= [cunit|int add(int x) { return x + 10; }|] where- f = add 10+ f = add (10 :: Integer) add n = [cfun|int add(int x) { return x + $int:n; } |] test_args :: Assertion@@ -234,6 +295,7 @@ [cfun|int add(int x) { $stms:stms return x + 1; }|] @?= [cfun|int add(int x) { a = 1; b = 2; return x + 1; }|] where+ one :: Integer one = 1 stm1 = [cstm|a = $int:one;|] stm2 = [cstm|b = 2;|]@@ -249,6 +311,20 @@ ty3 = [cparam|float|] tys = [ty2, ty3] + test_tyqual :: Assertion+ test_tyqual =+ [cdecl|$tyqual:tyqual int i;|]+ @?= [cdecl|const int i;|]+ where+ tyqual = C.Tconst noLoc++ test_tyquals :: Assertion+ test_tyquals =+ [cdecl|$tyquals:tyquals int i;|]+ @?= [cdecl|const volatile int i;|]+ where+ tyquals = [ctyquals|const volatile|]+ test_ty :: Assertion test_ty = [cdecl|$ty:ty1 f(const $ty:ty2);|]@@ -278,6 +354,20 @@ item1 = [citem|int y = 2;|] item2 = [citem|return x + y;|] + test_qual_antitype1 :: Assertion+ test_qual_antitype1 =+ [cexp|(const $ty:tau) NULL|]+ @?= [cexp|(const int) NULL|]+ where+ tau = [cty|int|]++ test_qual_antitype2 :: Assertion+ test_qual_antitype2 =+ [cexp|(const $ty:tau *) NULL|]+ @?= [cexp|(const int*) NULL|]+ where+ tau = [cty|int|]+ cPatternAntiquotationTests :: Test cPatternAntiquotationTests = testGroup "C pattern antiquotations" [ testCase "arguments pattern antiquote" pat_args@@ -300,6 +390,8 @@ , testCase "antiquote comment" test_antiquote_comment , testCase "comment at end of statements quote" test_stms_end_comment , testCase "comment before antiquoted statements" test_block_stms_comment+ , testCase "comment at beginning of a block" test_issue_55+ , testCase "comment inside cunit block" test_issue_76 ] where test_lbrace_comment :: Assertion@@ -362,9 +454,54 @@ stm2 = [cstm|b = 2;|] stms = [stm1, stm2] + test_issue_55 :: Assertion+ test_issue_55 =+ [cunit|int f(int x)+ { // Breaking comment.+ int y;+ return x;+ }|]+ @?=+ [cunit|int f(int x)+ { $comment:("// Breaking comment.")+ int y;+ return x;+ }|]++ test_issue_76 :: Assertion+ test_issue_76 =+ [cunit|+ $edecl:d1+ /* AAA */+ $edecl:d2+ struct A { int foo; };+ /* BBB */+ struct B { int bar; };+ |]+ @?=+ [cunit|+ int i;+ /* AAA */+ int j;+ struct A { int foo; };+ $comment:(" BBB ")+ struct B { int bar; };+ |]+ where+ d1 = [cedecl|int i;|]+ d2 = [cedecl|int j;|]+ regressionTests :: Test regressionTests = testGroup "Regressions"- [ testCase "pragmas" test_pragmas ]+ [ issue81+ , issue76+ , issue68+ , issue64+ , testCase "pragmas" test_pragmas+ , issue48+ , testCase "Issue #44" issue44+ , issue43+ ] where test_pragmas :: Assertion test_pragmas =@@ -386,3 +523,126 @@ ] noLoc ]++ issue81 :: Test+ issue81 = testCase "Issue #81"$+ showCompact [cstm|if (x > 1) { /* comment */ if (x > 2) x++; }|]+ @?=+ "if (x > 1) { /* comment */ if (x > 2) x++; }"++ issue76 :: Test+ issue76 = testCase "Issue #76" $+ [cunit|+ /* AAA */+ struct A { int foo; };+ /* BBB */+ struct B { int bar; };+ |]+ @?=+ [cunit|+ /* AAA */+ struct A { int foo; };+ $comment:(" BBB ")+ struct B { int bar; };+ |]++ issue68 :: Test+ issue68 = testCase "Issue #68"$+ showCompact [cstm|if (!initialized) { $stms:init_stms }|]+ @?=+ "if (!initialized) { return; }"+ where+ init_stms :: [C.Stm]+ init_stms = [[cstm|return;|]]++ issue64 :: Test+ issue64 = testGroup "Issue #64"+ [ testCase "-($int:i)" test_issue64_1+ , testCase "--($int:i)" test_issue64_2+ ]+ where+ i :: Int+ i = -42++ test_issue64_1 :: Assertion+ test_issue64_1 = pretty 80 (ppr [cexp|-($int:i)|]) @?= "-(-42)"++ test_issue64_2 :: Assertion+ test_issue64_2 = pretty 80 (ppr [cexp|--$int:i|]) @?= "--(-42)"++ issue48 :: Test+ issue48 = testGroup "Issue #48"+ [ testCase "-(-42)" test_issue48_1+ , testCase "--(-42)" test_issue48_2+ , testCase "-(--42)" test_issue48_3+ , testCase "+(+42)" test_issue48_4+ , testCase "++(+42)" test_issue48_5+ , testCase "+(++42)" test_issue48_6+ ]+ where+ test_issue48_1 :: Assertion+ test_issue48_1 = pretty 80 (ppr [cexp|-(-42)|]) @?= "-(-42)"++ test_issue48_2 :: Assertion+ test_issue48_2 = pretty 80 (ppr [cexp|--(-42)|]) @?= "--(-42)"++ test_issue48_3 :: Assertion+ test_issue48_3 = pretty 80 (ppr [cexp|-(--42)|]) @?= "-(--42)"++ test_issue48_4 :: Assertion+ test_issue48_4 = pretty 80 (ppr [cexp|+(+42)|]) @?= "+(+42)"++ test_issue48_5 :: Assertion+ test_issue48_5 = pretty 80 (ppr [cexp|++(+42)|]) @?= "++(+42)"++ test_issue48_6 :: Assertion+ test_issue48_6 = pretty 80 (ppr [cexp|+(++42)|]) @?= "+(++42)"++ issue44 :: Assertion+ issue44 =+ case parseDecl "$ty:something c;" of+ Left err -> fail (show err)+ Right grp -> (pretty 80 . ppr) grp @?= "$ty:something c"+ where+ parseDecl :: String -> Either SomeException C.InitGroup+ parseDecl s = P.parse [C.Antiquotation] [] P.parseDecl (B.pack s) (Just (startPos "<inline>"))++ issue43 :: Test+ issue43 = testGroup "Issue #43"+ [ testCase "float _Complex" test_issue43_1+ , testCase "long double _Complex" test_issue43_2+ , testCase "long _Complex double" test_issue43_3+ , testCase "_Imaginary long double" test_issue43_4+ ]+ where+ test_issue43_1 :: Assertion+ test_issue43_1 = [cty|float _Complex|] @?=+ C.Type (C.DeclSpec [] [] (C.Tfloat_Complex noLoc) noLoc)+ (C.DeclRoot noLoc)+ noLoc++ test_issue43_2 :: Assertion+ test_issue43_2 = [cty|long double _Complex|] @?=+ C.Type (C.DeclSpec [] [] (C.Tlong_double_Complex noLoc) noLoc)+ (C.DeclRoot noLoc)+ noLoc++ test_issue43_3 :: Assertion+ test_issue43_3 = [cty|long _Complex double|] @?=+ C.Type (C.DeclSpec [] [] (C.Tlong_double_Complex noLoc) noLoc)+ (C.DeclRoot noLoc)+ noLoc++ test_issue43_4 :: Assertion+ test_issue43_4 = [cty|_Imaginary long double|] @?=+ C.Type (C.DeclSpec [] [] (C.Tlong_double_Imaginary noLoc) noLoc)+ (C.DeclRoot noLoc)+ noLoc++-- | Pretty-print a value on single line.+showCompact :: Pretty a => a -> String+showCompact = map space2space . flip displayS "" . renderCompact . ppr+ where+ space2space :: Char -> Char+ space2space c | isSpace c = ' '+ | otherwise = c
+ tests/unit/MainCPP.hs view
@@ -0,0 +1,27 @@+{-# LANGUAGE CPP #-}+{-# LANGUAGE QuasiQuotes #-}++-- This module is needed because it's not possible to turn on CPP in Main.hs.+-- We need CPP because this test case doesn't work without FULL_HASKELL_ANTIQUOTES+-- turned on. (The simpler Haskell parser doesn't support infix operators.)++module MainCPP where++import Test.Framework (Test)+import Test.Framework.Providers.HUnit+import Test.HUnit (Assertion, (@?=))++import Language.C.Quote.C++testCase_test_int_hsexp :: [Test]+testCase_test_int_hsexp =+#ifdef FULL_HASKELL_ANTIQUOTES+ [testCase "unsigned long antiquote of Haskell expression" test_int_hsexp]+ where+ test_int_hsexp :: Assertion+ test_int_hsexp =+ [cexp|$ulint:(13 - 2*5 :: Integer)|] @?= [cexp|3UL|]+#else+ []+#endif+
tests/unit/Objc.hs view
@@ -1,6 +1,9 @@ {-# LANGUAGE QuasiQuotes #-} -module Objc (objcTests) where+module Objc (+ objcTests,+ objcRegressionTests+ ) where import Test.Framework import Test.Framework.Providers.HUnit@@ -148,3 +151,29 @@ objcLits = [cexp|@[$(objcLit "foo"), $(objcLit True), $(objcLit False), $(objcLit 'a'), nil]|] @?= [cexp|@[@"foo", @YES, @NO, @'a', nil]|]++objcRegressionTests :: Test+objcRegressionTests = testGroup "Objective-C Regressions"+ [ testCase "Issue #51" issue51 ]+ where+ issue51 :: Assertion+ issue51 = [cunit|+ @interface $id:prefixedClassName : NSObject+ $ifdecls:ifaceDecls+ @end+ |]++ @?= [cunit|+ @interface dummyClass : NSObject+ - (void) foo:(int)str fo:(int)str1;+ + (int) test1:(int)str2;+ @end+ |]+ where+ prefixedClassName :: String+ prefixedClassName = "dummyClass"++ ifaceDecls = [objcifdecls|+ - (void) foo:(int)str fo:(int)str1;+ + (int) test1:(int)str2;+ |]